Add files via upload
This commit is contained in:
+7
-256
@@ -14,254 +14,7 @@
|
||||
# THE SOFTWARE.
|
||||
|
||||
import os
|
||||
import random
|
||||
import re
|
||||
import socket
|
||||
import struct
|
||||
import time
|
||||
import torch
|
||||
import torch.nn.functional as F
|
||||
from sympy import symbols, lambdify, Abs, sin, cos, tan, sinh, cosh, tanh, exp, log, sqrt, atan, asin, acos, cbrt
|
||||
import numpy as np
|
||||
|
||||
MANIFEST = {
|
||||
"name": "ZSuite",
|
||||
"version": (2, 0, 0),
|
||||
"author": "TheBarret",
|
||||
"project": "https://github.com/TheBarret/",
|
||||
"description": "A suite of useful nodes for ComfyUI",
|
||||
}
|
||||
|
||||
# Initializing variables and instances
|
||||
random.seed()
|
||||
os.chdir(os.path.dirname(os.path.abspath(__file__)))
|
||||
|
||||
# Constants
|
||||
MAX_SEED = 2 ** 31 - 1
|
||||
|
||||
# Cheat sheet:
|
||||
#Gain values : 0.0 0.9 1.4 2.7 3.7 7.7 8.7 12.5 14.4 15.7 16.6 19.7 20.7 22.9 25.4
|
||||
# 28.0 29.7 32.8 33.8 36.4 37.2 38.6 40.2 42.1 43.4 43.9 44.5 48.0 49.6
|
||||
#Sample rates : 0.25, 1.024, 1.536, 1.792, 1.92, 2.048, 2.16, 2.56, 2.88, 3.2 MSps
|
||||
|
||||
DEVICE_FREQUENCY = 100000000
|
||||
DEVICE_IQ = 1024000
|
||||
DEVICE_TUNER = 1
|
||||
DEVICE_GAIN = 40.2
|
||||
|
||||
class ZSuitePrompter:
|
||||
def __init__(self):
|
||||
pass
|
||||
|
||||
@classmethod
|
||||
def INPUT_TYPES(cls):
|
||||
"""
|
||||
Define input types for the ZSuite Prompter node.
|
||||
"""
|
||||
return {
|
||||
"required": {
|
||||
"text": ("STRING", {"multiline": True, "default": "__preamble__ painting made by __artist__"}),
|
||||
"trigger": ("INT", {"default": 0}),
|
||||
},
|
||||
}
|
||||
|
||||
RETURN_TYPES = ("STRING",)
|
||||
FUNCTION = "process_text"
|
||||
CATEGORY = "Prompt"
|
||||
|
||||
@classmethod
|
||||
def process_text(cls, text, trigger):
|
||||
"""
|
||||
Process the input text by replacing placeholders with random words from corresponding text files.
|
||||
"""
|
||||
import re
|
||||
|
||||
# Extract placeholders between double underscores
|
||||
placeholders = re.findall(r'__([^_]+)__', text)
|
||||
print(f"[ZSuite] Signal [{trigger}]")
|
||||
print(f"[ZSuite] Replacing: {placeholders}")
|
||||
|
||||
# Replace each placeholder with a random word from its corresponding text file
|
||||
for placeholder in placeholders:
|
||||
file_path = os.path.join("blocks", f"{placeholder}.txt")
|
||||
if os.path.exists(file_path):
|
||||
with open(file_path, "r", encoding="utf-8") as file:
|
||||
words = [line.strip() for line in file.readlines() if line.strip()]
|
||||
if words:
|
||||
replacement = random.choice(words)
|
||||
text = text.replace(f"__{placeholder}__", replacement)
|
||||
|
||||
print(f"[ZSuite] Finished: {text}")
|
||||
return (text,)
|
||||
|
||||
# Seed Modifier Node
|
||||
class ZSuiteSeedMod:
|
||||
def __init__(self):
|
||||
pass
|
||||
|
||||
@classmethod
|
||||
def INPUT_TYPES(cls):
|
||||
"""
|
||||
Define input types for the Seed Modifier node.
|
||||
"""
|
||||
|
||||
# Assign default preset
|
||||
preset_default = "abs(seed * tan(trigger) + 0.1 * abs(seed))"
|
||||
|
||||
return {
|
||||
"required": {
|
||||
"seed": ("INT", {"default": 0}),
|
||||
"expression": ("STRING", {"multiline": True, "default": preset_default}),
|
||||
"trigger": ("INT", {"default": 0}),
|
||||
},
|
||||
}
|
||||
|
||||
@classmethod
|
||||
def OUTPUT_TYPES(cls):
|
||||
"""
|
||||
Define output types for the Seed Modifier node.
|
||||
"""
|
||||
return {
|
||||
"sum": ("INT", {}),
|
||||
"dec": ("FLOAT", {}),
|
||||
}
|
||||
|
||||
RETURN_TYPES = ("INT", "FLOAT")
|
||||
|
||||
FUNCTION = "modify_seed"
|
||||
CATEGORY = "Math"
|
||||
|
||||
def modify_seed(self, seed, expression, trigger):
|
||||
"""
|
||||
Modify the seed based on the selected expression, while retaining its essence with overflow check.
|
||||
"""
|
||||
print(f"[ZSuite] Signal [{trigger}]")
|
||||
|
||||
# Define symbols for the expression
|
||||
sym_seed, sym_trigger = symbols('seed trigger')
|
||||
|
||||
# Create a lambda function from the expression
|
||||
expr_function = lambdify((sym_seed, sym_trigger), expression, modules=['numpy'])
|
||||
|
||||
# Evaluate the expression using provided seed and trigger
|
||||
modification_amount = expr_function(seed, trigger)
|
||||
|
||||
# Save both integer and decimal representations
|
||||
modification_amount_integer = int(modification_amount)
|
||||
modification_amount_decimal = float(modification_amount)
|
||||
# Save end product
|
||||
interpolated_value = modification_amount_integer
|
||||
|
||||
# Use min and max to handle overflow with wraparound to 0
|
||||
interpolated_value = interpolated_value % (MAX_SEED + 1)
|
||||
|
||||
print(f"[ZSuite] Input: {expression} [{seed},{trigger}]")
|
||||
print(f"[ZSuite] Output: {interpolated_value}")
|
||||
|
||||
# Store the outcome for the next cycle
|
||||
self.last_sum = interpolated_value
|
||||
|
||||
return (interpolated_value,modification_amount_decimal)
|
||||
|
||||
|
||||
class ZSuiteNoise:
|
||||
def __init__(self):
|
||||
pass
|
||||
|
||||
@classmethod
|
||||
def INPUT_TYPES(cls):
|
||||
return {
|
||||
"required": {
|
||||
"latents": ("LATENT",),
|
||||
"rtl_tcp_host": ("STRING", {"default": "192.168.2.3", "multiline": False}),
|
||||
"rtl_tcp_port": ("INT", {"default": 10080, "min": 0, "max": 65535}),
|
||||
"duration": ("FLOAT", {"default": 0.5, "min": 0.0, "max": 10.0, "step": 0.1}),
|
||||
"strength": ("FLOAT", {"default": 1.0, "min": 0.0, "max": 200.0, "step": 0.01}),
|
||||
}
|
||||
}
|
||||
|
||||
RETURN_TYPES = ("LATENT",)
|
||||
FUNCTION = "inject_rtl_noise"
|
||||
CATEGORY = "latent/noise"
|
||||
|
||||
def inject_rtl_noise(self, latents, rtl_tcp_host, rtl_tcp_port, duration, strength):
|
||||
print(f"[ZSuite] Addressing device [{rtl_tcp_host}:{rtl_tcp_port}]")
|
||||
noise = self.collect_rtl_noise(rtl_tcp_host, rtl_tcp_port, duration)
|
||||
return self.inject_noise(latents, noise, strength)
|
||||
|
||||
def inject_noise(self, latents, noise, strength):
|
||||
s = latents.copy()
|
||||
if noise is None:
|
||||
return (s,)
|
||||
|
||||
# Ensure noise is a NumPy array
|
||||
noise = np.array(noise)
|
||||
|
||||
# Obtain min/max
|
||||
data_min = np.min(noise)
|
||||
data_max = np.max(noise)
|
||||
|
||||
# Iterate elements and scale them
|
||||
print(f"[ZSuite] Injecting noise...")
|
||||
for i in range(s["samples"].numel()):
|
||||
raw = float(strength * float(noise[i % noise.size]))
|
||||
data_scaled = (raw - data_min) / (data_max - data_min)
|
||||
data_scaled = 2 * data_scaled - 1
|
||||
s["samples"].view(-1)[i] = data_scaled
|
||||
|
||||
return (s,)
|
||||
|
||||
def collect_rtl_noise(self, host, port, duration):
|
||||
print(f"[ZSuite] Opening connection...")
|
||||
|
||||
with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s:
|
||||
s.settimeout(5) # Set a shorter timeout for testing
|
||||
try:
|
||||
s.connect((host, port))
|
||||
except Exception as e:
|
||||
print(f"[ZSuite] Error caught: {e}")
|
||||
return np.array([]), np.array([])
|
||||
print(f"[ZSuite] Sending parameters [{DEVICE_FREQUENCY},{DEVICE_IQ},{DEVICE_TUNER},{DEVICE_GAIN}]")
|
||||
self.send_command(s, 0x01, DEVICE_FREQUENCY)
|
||||
self.send_command(s, 0x02, DEVICE_IQ)
|
||||
self.send_command(s, 0x03, DEVICE_TUNER)
|
||||
self.send_command(s, 0x04, DEVICE_GAIN)
|
||||
|
||||
noise_data = self.collect_data(s, duration)
|
||||
|
||||
return self.prepare_noise(noise_data)
|
||||
|
||||
def send_command(self, sock, opcode, value):
|
||||
if opcode in {0x01, 0x02}: # Frequency and IQ Sample Rate commands
|
||||
cmd_bytes = struct.pack('>BI', opcode, value)
|
||||
elif opcode in {0x04, 0x05, 0x06, 0x0d}: # Gain, Frequency Correction, IF Gain, Tuner Gain Index commands
|
||||
cmd_bytes = struct.pack('>BHH', opcode, int(value), 0) # Ensure value is an integer
|
||||
elif opcode in {0x03, 0x07, 0x08, 0x09, 0x0a, 0x0e}: # Single uint8 value
|
||||
cmd_bytes = struct.pack('>BB', opcode, int(value)) # Ensure value is an integer
|
||||
else:
|
||||
raise ValueError(f"[ZSuite] Unsupported opcode {opcode}")
|
||||
|
||||
sock.sendall(cmd_bytes)
|
||||
|
||||
def collect_data(self, sock, duration):
|
||||
samples = []
|
||||
chunk_size = 4096
|
||||
timer_start = time.time()
|
||||
while True:
|
||||
data = sock.recv(chunk_size)
|
||||
if not data:
|
||||
break
|
||||
|
||||
samples.extend(struct.unpack('h' * (len(data) // 2), data))
|
||||
|
||||
if time.time() - timer_start > duration:
|
||||
break
|
||||
print(f"[ZSuite] Captured {len(samples)} samples")
|
||||
return np.array(samples)
|
||||
|
||||
def prepare_noise(self, data):
|
||||
combined_data = np.array(data)
|
||||
return combined_data
|
||||
import importlib
|
||||
|
||||
# NODE_CLASS_MAPPINGS
|
||||
if "NODE_CLASS_MAPPINGS" not in globals():
|
||||
@@ -270,11 +23,9 @@ if "NODE_CLASS_MAPPINGS" not in globals():
|
||||
if "NODE_DISPLAY_NAME_MAPPINGS" not in globals():
|
||||
NODE_DISPLAY_NAME_MAPPINGS = {}
|
||||
|
||||
# FINALIZE
|
||||
NODE_CLASS_MAPPINGS["ZSUITE_PROMPTER"] = ZSuitePrompter
|
||||
NODE_CLASS_MAPPINGS["ZSUITE_SEED_MODIFIER"] = ZSuiteSeedMod
|
||||
NODE_CLASS_MAPPINGS["ZSUITE_NOISE"] = ZSuiteNoise
|
||||
|
||||
NODE_DISPLAY_NAME_MAPPINGS["ZSUITE_PROMPTER"] = "ZSuite Prompter"
|
||||
NODE_DISPLAY_NAME_MAPPINGS["ZSUITE_SEED_MODIFIER"] = "ZSuite Seed Modifier"
|
||||
NODE_DISPLAY_NAME_MAPPINGS["ZSUITE_NOISE"] = "ZSuite Noise"
|
||||
for node in os.listdir(os.path.dirname(__file__) + os.sep + 'nodes'):
|
||||
if node.startswith('ZS_'):
|
||||
node = node.split('.')[0]
|
||||
node_import = importlib.import_module('custom_nodes.Zephys.nodes.' + node)
|
||||
print(f"[ZSuite] Loading {node}...")
|
||||
NODE_CLASS_MAPPINGS.update(node_import.NODE_CLASS_MAPPINGS)
|
||||
@@ -0,0 +1,59 @@
|
||||
import os
|
||||
import random
|
||||
import re
|
||||
import socket
|
||||
import struct
|
||||
import time
|
||||
import torch
|
||||
import numpy as np
|
||||
|
||||
# Initializing variables and instances
|
||||
random.seed()
|
||||
os.chdir(os.path.dirname(os.path.abspath(__file__)))
|
||||
|
||||
class ZSuitePrompter:
|
||||
def __init__(self):
|
||||
pass
|
||||
|
||||
@classmethod
|
||||
def INPUT_TYPES(cls):
|
||||
"""
|
||||
Define input types for the ZSuite Prompter node.
|
||||
"""
|
||||
return {
|
||||
"required": {
|
||||
"text": ("STRING", {"multiline": True, "default": "__preamble__ painting made by __artist__"}),
|
||||
"trigger": ("INT", {"default": 0}),
|
||||
},
|
||||
}
|
||||
|
||||
RETURN_TYPES = ("STRING",)
|
||||
FUNCTION = "process_text"
|
||||
CATEGORY = "Prompt"
|
||||
|
||||
@classmethod
|
||||
def process_text(cls, text, trigger):
|
||||
"""
|
||||
Process the input text by replacing placeholders with random words from corresponding text files.
|
||||
"""
|
||||
import re
|
||||
|
||||
# Extract placeholders between double underscores
|
||||
placeholders = re.findall(r'__([^_]+)__', text)
|
||||
print(f"[ZSuite] Signal [{trigger}]")
|
||||
print(f"[ZSuite] Replacing: {placeholders}")
|
||||
|
||||
# Replace each placeholder with a random word from its corresponding text file
|
||||
for placeholder in placeholders:
|
||||
file_path = os.path.join("blocks", f"{placeholder}.txt")
|
||||
if os.path.exists(file_path):
|
||||
with open(file_path, "r", encoding="utf-8") as file:
|
||||
words = [line.strip() for line in file.readlines() if line.strip()]
|
||||
if words:
|
||||
replacement = random.choice(words)
|
||||
text = text.replace(f"__{placeholder}__", replacement)
|
||||
|
||||
print(f"[ZSuite] Finished: {text}")
|
||||
return (text,)
|
||||
|
||||
NODE_CLASS_MAPPINGS = { "ZSuite: Prompter": ZSuitePrompter }
|
||||
@@ -0,0 +1,152 @@
|
||||
# #######################################################################################################################
|
||||
|
||||
# This node facilitates communication with an RTL-SDR device (Digital Radio Receiver) through a TCP connection.
|
||||
# Once connected, it captures live ambient RF noise, which is then embedded into a latent vector.
|
||||
|
||||
# Protocol: https://hz.tools/rtl_tcp/ Paul Tagliamonte 2020-11-03
|
||||
|
||||
# Overview:
|
||||
# - The node establishes a TCP connection with the RTL-SDR device.
|
||||
# - Sends essential parameters such as frequency, IQ sample rate, tuner, and gain settings.
|
||||
# - Collects ambient RF noise data from the device for a specified duration.
|
||||
# - Scales and injects the noise into a given latent vector, adjusting its strength.
|
||||
# - The injected latent vector is then returned for further processing.
|
||||
|
||||
# Cheat sheet:
|
||||
# Frequnecy : Depending device type but generally 5Khz ~ 1.7Ghz, in `Hz` unit notation
|
||||
# Gain values : 0.0, 0.9, 1.4, 2.7, 3.7, 7.7, 8.7, 12.5, 14.4, 15.7, 16.6, 19.7, 20.7, 22.9, 25.4,
|
||||
# 28.0, 29.7, 32.8, 33.8, 36.4, 37.2, 38.6, 40.2, 42.1, 43.4, 43.9, 44.5, 48.0, 49.6 (Default: 0 = auto)
|
||||
# Samplerates : 0.25, 1.024, 1.536, 1.792, 1.92, 2.048, 2.16, 2.56, 2.88, 3.2 MSps (Default: 1.024 MSps)
|
||||
|
||||
import os
|
||||
import random
|
||||
import re
|
||||
import socket
|
||||
import struct
|
||||
import time
|
||||
import torch
|
||||
import numpy as np
|
||||
|
||||
# Settings for RTL-SDR device
|
||||
DEVICE_HOST = "192.168.2.3"
|
||||
DEVICE_PORT = 10080
|
||||
DEVICE_BUFFER = 4096
|
||||
DEVICE_FREQUENCY = 100000000
|
||||
DEVICE_IQ = 1024000
|
||||
DEVICE_TUNER = 1
|
||||
DEVICE_GAIN = 20.7
|
||||
|
||||
class ZSuiteNoise:
|
||||
def __init__(self):
|
||||
pass
|
||||
|
||||
@classmethod
|
||||
def INPUT_TYPES(cls):
|
||||
# Define input types for the inject_rtl_noise function
|
||||
return {
|
||||
"required": {
|
||||
"latents": ("LATENT",),
|
||||
"rtl_tcp_host": ("STRING", {"default": DEVICE_HOST, "multiline": False}),
|
||||
"rtl_tcp_port": ("INT", {"default": DEVICE_PORT, "min": 0, "max": 65535}),
|
||||
"duration": ("FLOAT", {"default": 0.3, "min": 0.0, "max": 10.0, "step": 0.1}),
|
||||
"strength": ("FLOAT", {"default": 0.5, "min": 0.0, "max": 1.0, "step": 0.01}),
|
||||
"trigger": ("INT", {"default": 0}),
|
||||
}
|
||||
}
|
||||
|
||||
RETURN_TYPES = ("LATENT",)
|
||||
FUNCTION = "inject_rtl_noise"
|
||||
CATEGORY = "latent/noise"
|
||||
|
||||
def inject_rtl_noise(self, latents, rtl_tcp_host, rtl_tcp_port, duration, strength, trigger):
|
||||
print(f"[ZSuite] Signal [{trigger}]")
|
||||
# Inject RTL-SDR noise into latent samples
|
||||
print(f"[ZSuite] Addressing device [{rtl_tcp_host}:{rtl_tcp_port}]")
|
||||
noise = self.collect_rtl_noise(rtl_tcp_host, rtl_tcp_port, duration)
|
||||
return self.inject_noise(latents, noise, strength)
|
||||
|
||||
def inject_noise(self, latents, noise, strength):
|
||||
# Inject noise into latent samples
|
||||
s = latents.copy()
|
||||
if noise is None:
|
||||
return (s,)
|
||||
|
||||
# Ensure noise is a NumPy array
|
||||
noise = np.array(noise)
|
||||
|
||||
# Obtain min/max values from noise data
|
||||
data_min = np.min(noise)
|
||||
data_max = np.max(noise)
|
||||
|
||||
# Scale and inject noise into latent samples
|
||||
print(f"[ZSuite] Injecting noise...")
|
||||
for i in range(s["samples"].numel()):
|
||||
raw = float(strength * float(noise[i % noise.size]))
|
||||
data_scaled = (raw - data_min) / (data_max - data_min)
|
||||
data_scaled = 2 * data_scaled - 1
|
||||
s["samples"].view(-1)[i] = data_scaled
|
||||
|
||||
return (s,)
|
||||
|
||||
def collect_rtl_noise(self, host, port, duration):
|
||||
# Collect RTL-SDR noise data from specified host and port
|
||||
print(f"[ZSuite] Opening connection...")
|
||||
|
||||
with socket.socket(socket.AF_INET, socket.SOCK_STREAM) as s:
|
||||
s.settimeout(5) # Set a shorter timeout for testing
|
||||
try:
|
||||
s.connect((host, port))
|
||||
except Exception as e:
|
||||
print(f"[ZSuite] Error caught: {e}")
|
||||
return np.array([]), np.array([])
|
||||
|
||||
# Send RTL-SDR parameters to the device
|
||||
print(f"[ZSuite] Sending parameters [{DEVICE_FREQUENCY},{DEVICE_IQ},{DEVICE_TUNER},{DEVICE_GAIN}]")
|
||||
self.send_command(s, 0x01, DEVICE_FREQUENCY)
|
||||
self.send_command(s, 0x02, DEVICE_IQ)
|
||||
self.send_command(s, 0x03, DEVICE_TUNER)
|
||||
self.send_command(s, 0x04, DEVICE_GAIN)
|
||||
|
||||
# Collect noise data from the device
|
||||
noise_data = self.collect_data(s, duration)
|
||||
|
||||
return self.prepare_noise(noise_data)
|
||||
|
||||
def send_command(self, sock, opcode, value):
|
||||
# Send command to the RTL-SDR device
|
||||
if opcode in {0x01, 0x02}: # Frequency and IQ Sample Rate commands
|
||||
cmd_bytes = struct.pack('>BI', opcode, value)
|
||||
elif opcode in {0x04, 0x05, 0x06, 0x0d}: # Gain, Frequency Correction, IF Gain, Tuner Gain Index commands
|
||||
cmd_bytes = struct.pack('>BHH', opcode, int(value), 0) # Ensure value is an integer
|
||||
elif opcode in {0x03, 0x07, 0x08, 0x09, 0x0a, 0x0e}: # Single uint8 value
|
||||
cmd_bytes = struct.pack('>BB', opcode, int(value)) # Ensure value is an integer
|
||||
else:
|
||||
raise ValueError(f"[ZSuite] Unsupported opcode {opcode}")
|
||||
|
||||
sock.sendall(cmd_bytes)
|
||||
|
||||
def collect_data(self, sock, duration):
|
||||
# Collect data from the RTL-SDR device for the specified duration
|
||||
samples = []
|
||||
chunk_size = DEVICE_BUFFER
|
||||
timer_start = time.time()
|
||||
while True:
|
||||
data = sock.recv(chunk_size)
|
||||
if not data:
|
||||
break
|
||||
|
||||
samples.extend(struct.unpack('h' * (len(data) // 2), data))
|
||||
|
||||
if time.time() - timer_start > duration:
|
||||
break
|
||||
print(f"[ZSuite] Captured {len(samples)} samples")
|
||||
return np.array(samples)
|
||||
|
||||
def prepare_noise(self, data):
|
||||
# Prepare noise data for injection
|
||||
combined_data = np.array(data)
|
||||
return combined_data
|
||||
|
||||
# Mapping for the ZSuite: RF Noise node class
|
||||
NODE_CLASS_MAPPINGS = {"ZSuite: RF Noise": ZSuiteNoise}
|
||||
|
||||
@@ -0,0 +1,82 @@
|
||||
import os
|
||||
import random
|
||||
import re
|
||||
import socket
|
||||
import struct
|
||||
import time
|
||||
import torch
|
||||
import torch.nn.functional as F
|
||||
from sympy import symbols, lambdify, Abs, sin, cos, tan, sinh, cosh, tanh, exp, log, sqrt, atan, asin, acos, cbrt
|
||||
import numpy as np
|
||||
|
||||
# Constants
|
||||
MAX_SEED = 2 ** 31 - 1
|
||||
|
||||
class ZSuiteSeedMod:
|
||||
def __init__(self):
|
||||
pass
|
||||
|
||||
@classmethod
|
||||
def INPUT_TYPES(cls):
|
||||
"""
|
||||
Define input types for the Seed Modifier node.
|
||||
"""
|
||||
|
||||
# Assign default preset
|
||||
preset_default = "abs(seed * tan(trigger) + 0.1 * abs(seed))"
|
||||
|
||||
return {
|
||||
"required": {
|
||||
"seed": ("INT", {"default": 0}),
|
||||
"expression": ("STRING", {"multiline": True, "default": preset_default}),
|
||||
"trigger": ("INT", {"default": 0}),
|
||||
},
|
||||
}
|
||||
|
||||
@classmethod
|
||||
def OUTPUT_TYPES(cls):
|
||||
"""
|
||||
Define output types for the Seed Modifier node.
|
||||
"""
|
||||
return {
|
||||
"sum": ("INT", {}),
|
||||
"dec": ("FLOAT", {}),
|
||||
}
|
||||
|
||||
RETURN_TYPES = ("INT", "FLOAT")
|
||||
FUNCTION = "modify_seed"
|
||||
CATEGORY = "Math"
|
||||
|
||||
def modify_seed(self, seed, expression, trigger):
|
||||
"""
|
||||
Modify the seed based on the selected expression, while retaining its essence with overflow check.
|
||||
"""
|
||||
print(f"[ZSuite] Signal [{trigger}]")
|
||||
|
||||
# Define symbols for the expression
|
||||
sym_seed, sym_trigger = symbols('seed trigger')
|
||||
|
||||
# Create a lambda function from the expression
|
||||
expr_function = lambdify((sym_seed, sym_trigger), expression, modules=['numpy'])
|
||||
|
||||
# Evaluate the expression using provided seed and trigger
|
||||
modification_amount = expr_function(seed, trigger)
|
||||
|
||||
# Save both integer and decimal representations
|
||||
modification_amount_integer = int(modification_amount)
|
||||
modification_amount_decimal = float(modification_amount)
|
||||
# Save end product
|
||||
interpolated_value = modification_amount_integer
|
||||
|
||||
# Use min and max to handle overflow with wraparound to 0
|
||||
interpolated_value = interpolated_value % (MAX_SEED + 1)
|
||||
|
||||
print(f"[ZSuite] Input: {expression} [{seed},{trigger}]")
|
||||
print(f"[ZSuite] Output: {interpolated_value}")
|
||||
|
||||
# Store the outcome for the next cycle
|
||||
self.last_sum = interpolated_value
|
||||
|
||||
return (interpolated_value,modification_amount_decimal)
|
||||
|
||||
NODE_CLASS_MAPPINGS = { "ZSuite: SeedMod": ZSuiteSeedMod }
|
||||
@@ -0,0 +1 @@
|
||||
Panda␍Parrot␍Ox␍Owl␍Otter␍Peacock␍Pelican␍Pigeon␍Puppy␍Rabbit␍Pig␍Penguin␍Ostrich␍Lion␍Lizard␍Lobster␍Leopard␍ladybug␍Louse␍Mole␍Mouse␍Octopus␍Moth␍Mosquito␍Monkey␍Raccoon␍Swan␍Tiger␍Toad␍Swallow␍Stork␍Squirrel␍Starfish␍Turkey␍Woodpecker␍Worm␍Whale␍Walrus␍Turtle␍Squid␍Seagull␍Seahorse␍Robin␍Reindeer␍Rat␍Raven␍Seal␍Shark␍Snake␍Sparrow␍Spider␍Shrimp␍Shells␍Sheep␍Koala␍Coyote␍Crab␍Cow␍Coral␍Cormorant␍Crocodile␍Kitten␍Dog␍Dolphin␍Deer␍Crow␍Cockroach␍Clams␍Bear␍Bee␍Bat␍Badger␍Alligator␍Ant␍Beetle␍Butterfly␍Chimpanzee␍Chicken␍Centipede␍Camel␍Cat␍Grasshopper␍Hamster␍Hare␍Gorilla␍Goose␍Goat␍Dove␍Goldfish␍Hawk␍Hedgehog␍Jellyfish␍Kangaroo␍Horse␍Hedgehong␍Hippopotamus␍Giraffe␍Fish␍Flamingo␍Elephant␍Elk␍Fly␍Fox␍Frog␍Ducks␍Dragonfly␍Sea anemone␍Black bird␍Bald eagle␍Tropical fish␍Sea lion␍Sea turtle␍Sea urchin␍Blue whale␍Arctic wolf
|
||||
@@ -0,0 +1,9 @@
|
||||
Greek Classical Architecture
|
||||
Roman Classical Architecture
|
||||
Gothic Architecture
|
||||
Baroque Architecture
|
||||
Neoclassical Architecture
|
||||
Victorian Architecture
|
||||
Modern Architecture
|
||||
Post-Modern Architecture
|
||||
Neofuturist Architecture
|
||||
File diff suppressed because one or more lines are too long
@@ -0,0 +1,96 @@
|
||||
Skull
|
||||
Cranium
|
||||
Mandibles
|
||||
Maxilla
|
||||
Nasal bone
|
||||
Zygomatic bone
|
||||
Face
|
||||
Eyes
|
||||
Nose
|
||||
Ears
|
||||
Mouth
|
||||
Tongue
|
||||
Teeth
|
||||
Cheeks
|
||||
Chin
|
||||
Neck
|
||||
Trachea
|
||||
Esophagus
|
||||
Cervical vertebrae
|
||||
Torso
|
||||
Credit: MedicalGraphics
|
||||
Shoulders
|
||||
Chest
|
||||
Pectoralis
|
||||
Ribcage
|
||||
Lungs
|
||||
Heart
|
||||
Upper Abdomen
|
||||
Abdominal muscles
|
||||
Stomach
|
||||
Kidneys
|
||||
Liver
|
||||
Lower Abdomen
|
||||
Small Intestines
|
||||
Large Intestines
|
||||
Colon
|
||||
Rectum
|
||||
Posterior
|
||||
Spine
|
||||
Gluteus maximus
|
||||
Arms
|
||||
Brachium
|
||||
Humerus
|
||||
Biceps
|
||||
Triceps
|
||||
Elbow
|
||||
Forearm
|
||||
Ulna
|
||||
Radius
|
||||
Hand
|
||||
Carpals
|
||||
Metacarpals
|
||||
Legs
|
||||
Thigh
|
||||
Quadriceps
|
||||
Hamstring
|
||||
Knee
|
||||
Crus
|
||||
Shin
|
||||
Tibia
|
||||
Fibia
|
||||
Ankle
|
||||
Foot
|
||||
Tarsals
|
||||
Metatarsals
|
||||
Trachea
|
||||
Bronchioles
|
||||
Lungs
|
||||
Alveoli
|
||||
Diaphragm
|
||||
Heart
|
||||
Blood Vessels
|
||||
Arteries
|
||||
Veins
|
||||
Capillaries
|
||||
Blood
|
||||
Skull
|
||||
Vertebrae
|
||||
Scapula
|
||||
Ribs
|
||||
Humerus
|
||||
Ulna
|
||||
Radius
|
||||
Pelvis
|
||||
Carpals/Metacarpals
|
||||
Femur
|
||||
Patella
|
||||
Tibia
|
||||
Fibia
|
||||
Tarsals/Metatarsals
|
||||
Mouth
|
||||
Esophagus
|
||||
Stomach
|
||||
Small Intestines
|
||||
Large Intestine
|
||||
Rectum
|
||||
@@ -0,0 +1 @@
|
||||
Advertising designer␍Animator␍Architect␍Art teacher␍Cake decorator␍Courtroom sketch artist␍Drafter␍Editorial cartoonist␍Electrical engineer␍Fashion designer␍Graphic designer␍Illustrator␍Interior designer␍Makeup artist␍Plumber␍Tattoo artist␍Technical illustrator
|
||||
@@ -0,0 +1,61 @@
|
||||
Argentina
|
||||
Australia
|
||||
Austria
|
||||
Belgium
|
||||
Brazil
|
||||
Canada
|
||||
Chile
|
||||
China
|
||||
Colombia
|
||||
Denmark
|
||||
Egypt
|
||||
France
|
||||
Germany
|
||||
Greece
|
||||
India
|
||||
Indonesia
|
||||
Italy
|
||||
Japan
|
||||
Malaysia
|
||||
Mexico
|
||||
Norway
|
||||
Poland
|
||||
Portugal
|
||||
Russia
|
||||
South Africa
|
||||
South Korea
|
||||
Spain
|
||||
Sweden
|
||||
Switzerland
|
||||
Thailand
|
||||
Turkey
|
||||
Ukraine
|
||||
United Arab Emirates
|
||||
United Kingdom
|
||||
United States
|
||||
Vietnam
|
||||
Austria
|
||||
Bahrain
|
||||
Botswana
|
||||
Costa Rica
|
||||
Croatia
|
||||
Czech Republic
|
||||
Dominican Republic
|
||||
Ecuador
|
||||
Estonia
|
||||
Ghana
|
||||
Hungary
|
||||
Iceland
|
||||
Jamaica
|
||||
Kenya
|
||||
Lebanon
|
||||
Lithuania
|
||||
Malaysia
|
||||
Morocco
|
||||
Nepal
|
||||
Peru
|
||||
Philippines
|
||||
Singapore
|
||||
Slovenia
|
||||
Tanzania
|
||||
Uruguay
|
||||
File diff suppressed because one or more lines are too long
@@ -0,0 +1,308 @@
|
||||
Alu Gobi
|
||||
Alu Matar
|
||||
American Pancakes
|
||||
Apple Pie
|
||||
Arros negre
|
||||
Arroz con huevo
|
||||
Arroz con pollo
|
||||
Avocado Toast
|
||||
BLT Sandwich
|
||||
Bacon Egg and Cheese Sandwich
|
||||
Bagels
|
||||
Baguette
|
||||
Baked Ziti
|
||||
Banana Bread
|
||||
Banana Split
|
||||
Barbecue Ribs
|
||||
Barfi
|
||||
Beef Rendang (rendang)
|
||||
Beef Vindaloo
|
||||
Beefaroni
|
||||
Beignet
|
||||
Beignets
|
||||
Blanquette de Veau
|
||||
Bocadillo de carne
|
||||
Bocadillo de jamon
|
||||
Bocadillo de pollo
|
||||
Bocadillo de queso
|
||||
Boeuf Bourguignon
|
||||
Bouillabaisse
|
||||
Bread Pudding
|
||||
Breakfast Burrito
|
||||
Brioche
|
||||
Brodetto Di Pesce
|
||||
Brownies
|
||||
Buffalo Wings
|
||||
Burrito
|
||||
Butter Chicken
|
||||
Cabrales
|
||||
California-Style Pizza
|
||||
Cannele
|
||||
Carrot Halwa
|
||||
Cassoulet
|
||||
Chaat Papri
|
||||
Cham-Cham
|
||||
Chana Masala
|
||||
Chapati
|
||||
Chausson aux Pommes
|
||||
Cheese Dog
|
||||
Cheeseburger
|
||||
Cheesesteak
|
||||
Chiacchiere
|
||||
Chicago-Style Deep Dish Pizza
|
||||
Chicken 65
|
||||
Chicken Biriyani
|
||||
Chicken Fried Steak
|
||||
Chicken Nuggets
|
||||
Chicken Parmigiana
|
||||
Chicken Tajine
|
||||
Chicken Tikka
|
||||
Chicken and Waffles
|
||||
Chicken with Chestnuts
|
||||
Chili Chicken
|
||||
Chili Dog
|
||||
Chili con Carne
|
||||
Chimichanga
|
||||
Chinese Chicken Salad
|
||||
Chistorra
|
||||
Chocolate Chip Cookie
|
||||
Chocolate Italian Sponge Cake
|
||||
Chocolate caliente
|
||||
Chop Suey
|
||||
Chouquette
|
||||
Club Sandwich
|
||||
Cobb Salad
|
||||
Conejo con arroz
|
||||
Coq au Vin
|
||||
Cordero asado
|
||||
Coriander Chutney
|
||||
Corn on the Cob
|
||||
Cornbread
|
||||
Couscous
|
||||
Crab Cake
|
||||
Creamy Chicken Marsala
|
||||
Creamy Lemon Parmesan Chicken Piccata
|
||||
Creamy Mushroom Soup With Italian Sausage
|
||||
Creme Brulee
|
||||
Crepe
|
||||
Croissant
|
||||
Croque Monsieur
|
||||
Croquetas de bacalao
|
||||
Croquetas de jamon
|
||||
Cuban Sandwich
|
||||
Cupcake
|
||||
Daifuku
|
||||
Daiwa Sushi
|
||||
Dal Makhani
|
||||
Dango
|
||||
Date Tamarind Chutney
|
||||
Dessert Bars
|
||||
Deviled Eggs
|
||||
Dhokla
|
||||
Doughnut
|
||||
Easy Italian Stuffed Peppers
|
||||
Ebi furai
|
||||
Eclair
|
||||
Eggplant And Italian Sausage Gratin
|
||||
Eggs Benedict
|
||||
Empanada Galleg
|
||||
Endo Sushi
|
||||
Escargot
|
||||
Espetos
|
||||
Fajitas
|
||||
Fish Fry
|
||||
Flan
|
||||
Focaccia Di Genova
|
||||
French Onion Soup
|
||||
Fried Chicken
|
||||
Frozen Yogurt
|
||||
Frutti Di Mare
|
||||
Fudge
|
||||
Fuet
|
||||
Gachas
|
||||
Galette Complet
|
||||
Gambas a la plancha
|
||||
Garlic Butter Italian Sausage Sandwiches
|
||||
Garlic Parmesan Cheese Bombs
|
||||
Garlic Soya Chicken
|
||||
General Tso's Chicken
|
||||
Gougere
|
||||
Gratin Dauphinois
|
||||
Grilled Cheese
|
||||
Gulab Jamun
|
||||
Gumbo
|
||||
Gyoza
|
||||
Hakata ramen
|
||||
Himono
|
||||
Hoagie
|
||||
Honey Chilli Potato
|
||||
Hot Italian Sliders
|
||||
Houtou Fudou
|
||||
Ice Cream Float
|
||||
Idli
|
||||
Italian Beef
|
||||
Italian Braised Chicken
|
||||
Italian Chicken Meal Prep Bowls
|
||||
Italian Crescent Casserole
|
||||
Italian Garlic Bread Grilled Cheese
|
||||
Italian Green Salad
|
||||
Italian Oven Roasted Vegetables
|
||||
Italian Ravioli
|
||||
Italian Roasted Potatoes
|
||||
Italian Sandwich Roll-Ups
|
||||
Italian Sausage And Peppers
|
||||
Italian Sausage Rigatoni
|
||||
Italian Seafood Pasta With Mussels & Calamari
|
||||
Italian Skillet Chicken With Tomatoes And Mushrooms
|
||||
Italian Style Chicken Mozzarella Skillet
|
||||
Italian Wedding Soup
|
||||
Jabugo
|
||||
Jalebi
|
||||
Jambalaya
|
||||
Jambon-Beurre
|
||||
Kaiseki
|
||||
Kaisendon
|
||||
Kansas City-Style Barbecue
|
||||
Karaage
|
||||
Kasutera
|
||||
Katsukura
|
||||
Kayu
|
||||
Key Lime Pie
|
||||
Kheema
|
||||
Kheer
|
||||
Korokke
|
||||
Kulfi
|
||||
Kung Pao Chicken
|
||||
Kushiyaki
|
||||
Ladoo
|
||||
Lamb Kebabs
|
||||
Lamb Vindaloo
|
||||
Lime Pickle
|
||||
Lle Flottante
|
||||
Lobster Roll
|
||||
Longaniza
|
||||
Mac and Cheese
|
||||
Macaron
|
||||
Madeleine
|
||||
Magdalenas
|
||||
Magret de canard
|
||||
Maisen
|
||||
Makizushi
|
||||
Malai Kofta (Veggie Balls With Sauce)
|
||||
Mango Lassi
|
||||
Marinara Sauce
|
||||
Masala Chai
|
||||
Masala Dosa
|
||||
Masoor Dal
|
||||
Meatloaf
|
||||
Medu Vada
|
||||
Milkshake
|
||||
Mille Feuille
|
||||
Miso Soup
|
||||
Mofongo
|
||||
Molten Chocolate Cake
|
||||
Monaka
|
||||
Montadito
|
||||
Morcilla de Burgos
|
||||
Moules Frites
|
||||
Mussels In Spicy Red Arrabbiata Sauce
|
||||
Naan
|
||||
Napolitana de chocolate
|
||||
Nashville Hot Chicken
|
||||
Natillas
|
||||
Navratan Korma (Nine Gem Curry)
|
||||
Negima yakitori
|
||||
New England Clam Chowder
|
||||
New York-Style Cheesecake
|
||||
New York-Style Pizza
|
||||
Okonomiyaki
|
||||
Omelette
|
||||
Omurice
|
||||
Onion Pakora
|
||||
Onion Rings
|
||||
Orzo With Italian Sausage And Peppers
|
||||
Osso Buco
|
||||
Oyakodon
|
||||
Pa amb tomaquet
|
||||
Pain au Chocolat
|
||||
Palmie
|
||||
Pane Bianco
|
||||
Papadum
|
||||
Pasta Salad
|
||||
Pastrami on Rye
|
||||
Pecan Pie
|
||||
Pernil
|
||||
Pesto Sliders
|
||||
Pissaladiere
|
||||
Pisto
|
||||
Po'Boy
|
||||
Poke Salad
|
||||
Porchetta
|
||||
Pot Pie
|
||||
Pot Roast
|
||||
Pot au feu
|
||||
Pulao
|
||||
Pulled Pork
|
||||
Queso Tetilla
|
||||
Quiche
|
||||
Quince Paste
|
||||
Quinoi
|
||||
Rabas
|
||||
Ragu Alla Bolognese
|
||||
Raita
|
||||
Rajma
|
||||
Ras Malai
|
||||
Ratatouille
|
||||
Ravioli With Garlic Basil Oil
|
||||
Red Velvet Cake
|
||||
Reuben
|
||||
Rillettes
|
||||
Roast Beef Sandwich
|
||||
Rogan Josh
|
||||
Romesco
|
||||
Roscon de Reyes
|
||||
S'more
|
||||
Saag Paneer
|
||||
Sambar
|
||||
Samosa
|
||||
Sauce Bechamel
|
||||
Shoyu ramen
|
||||
Shrimp And Corn Risotto With Bacon
|
||||
Shrimp and Grits
|
||||
Sicilian Pizza
|
||||
Slow Cooker Italian Beef
|
||||
Snickerdoodle
|
||||
Soba
|
||||
Sofrito
|
||||
Souffle
|
||||
Spaghetti Olio E Aglio
|
||||
Spaghetti and Meatballs
|
||||
Steak Tartare
|
||||
Stromboli
|
||||
Stuffed Italian Flank Steak
|
||||
Submarine Sandwich
|
||||
Sukiyaki
|
||||
Sundae
|
||||
Surf and Turf
|
||||
Tandoori Chicken
|
||||
Tapenade
|
||||
Tarta de Santiago
|
||||
Tarte
|
||||
Tartine
|
||||
Teppanyaki
|
||||
Teriyaki
|
||||
Texas-Style Barbecue
|
||||
Tomate Farcie
|
||||
Tomate frito
|
||||
Tomato & Basil Bruschetta
|
||||
Tonkotsu ramen
|
||||
Torta del Casar
|
||||
Tortellini Pasta Carbonara
|
||||
Tortellini Soup With Italian Sausage And Spinach
|
||||
Tsunahachi
|
||||
Turron
|
||||
Udon
|
||||
Uthapam
|
||||
Vegetable Jalfrezi
|
||||
Verdejo
|
||||
Yakisoba
|
||||
@@ -0,0 +1 @@
|
||||
Tequila␍Jägermeister␍Vodka␍Whiskey␍Rum␍Gin␍Sambuca␍Chartreuse␍Absinthe␍Schnapps␍Pilsner␍Stout␍Porter␍Wheat beer␍Lager␍Belgian ale␍Brown ale␍Amber ale␍Saison␍Cabernet Sauvignon␍Merlot␍Pinot Noir␍Chardonnay␍Sauvignon Blanc␍Pinot Grigio␍Riesling␍Syrah/Shiraz␍Zinfandel␍Malbec
|
||||
@@ -0,0 +1,20 @@
|
||||
House
|
||||
Mansion
|
||||
Temple
|
||||
Mosque
|
||||
Church
|
||||
Synagogue
|
||||
Cathedral
|
||||
Skyscraper
|
||||
Castle
|
||||
Chalet
|
||||
Cottage
|
||||
Lodge
|
||||
Barn
|
||||
Warehouse
|
||||
Factory
|
||||
Office building
|
||||
Apartment building
|
||||
Hotel
|
||||
School
|
||||
Hospital
|
||||
@@ -0,0 +1,129 @@
|
||||
Abraham Lincoln
|
||||
Albert Einstein
|
||||
Alfred Hitchcock
|
||||
Al Gore
|
||||
Amelia Earhart
|
||||
Angelina Jolie
|
||||
Anne Frank
|
||||
Audrey Hepburn
|
||||
Aung San Suu Kyi
|
||||
Babe Ruth
|
||||
Barack Obama
|
||||
Benazir Bhutto
|
||||
Bill Gates
|
||||
Billie Holiday
|
||||
Billie Jean King
|
||||
Bob Geldof
|
||||
Brad Pitt
|
||||
C.S. Lewis
|
||||
Carl Lewis
|
||||
Charles Darwin
|
||||
Charles de Gaulle
|
||||
Christopher Columbus
|
||||
Cleopatra
|
||||
Coco Chanel
|
||||
Cristiano Ronaldo
|
||||
Dalai Lama
|
||||
David Beckham
|
||||
Desmond Tutu
|
||||
Donald Trump
|
||||
Elon Musk
|
||||
Elvis Presley
|
||||
Emile Zatopek
|
||||
Emmeline Pankhurst
|
||||
Ernest Hemingway
|
||||
Eva Peron
|
||||
Fidel Castro
|
||||
Florence Nightingale
|
||||
Franklin D. Roosevelt
|
||||
George Clooney
|
||||
George Orwell
|
||||
Grace Kelly
|
||||
Greta Thunberg
|
||||
Haile Selassie
|
||||
Henry Ford
|
||||
Indira Gandhi
|
||||
Ingrid Bergman
|
||||
J.K.Rowling
|
||||
J.R.R. Tolkien
|
||||
Jacqueline Kennedy Onassis
|
||||
Jawaharlal Nehru
|
||||
Jesse Owens
|
||||
Jimmy Wales
|
||||
Joe Biden
|
||||
John F. Kennedy
|
||||
John Lennon
|
||||
John M Keynes
|
||||
Jon Stewart
|
||||
Joseph Stalin
|
||||
Julie Andrews
|
||||
Katherine Hepburn
|
||||
Kim Kardashian
|
||||
Kylie Minogue
|
||||
Lance Armstrong
|
||||
Lech Walesa
|
||||
Leonardo da Vinci
|
||||
Leo Tolstoy
|
||||
Lionel Messi
|
||||
Lord Baden Powell
|
||||
Louis Pasteur
|
||||
Ludwig Beethoven
|
||||
Lyndon Johnson
|
||||
Madonna
|
||||
Mahatma Gandhi
|
||||
Malala Yousafzai
|
||||
Malcolm X
|
||||
Mao Zedong
|
||||
Margaret Thatcher
|
||||
Marie Antoinette
|
||||
Marie Curie
|
||||
Marilyn Monroe
|
||||
Martin Luther King
|
||||
Mary Magdalene
|
||||
Mata Hari
|
||||
Michael Jackson
|
||||
Michael Jordon
|
||||
Mikhail Gorbachev
|
||||
Mother Teresa
|
||||
Muhammad Ali
|
||||
Neil Armstrong
|
||||
Nelson Mandela
|
||||
Oprah Winfrey
|
||||
Oscar Wilde
|
||||
Pablo Picasso
|
||||
Paul Krugman
|
||||
Paul McCartney
|
||||
Pele
|
||||
Peter Sellers
|
||||
Plato
|
||||
Pope Francis
|
||||
Pope John Paul II
|
||||
Prince Charles
|
||||
Queen Elizabeth II
|
||||
Queen Victoria
|
||||
Richard Branson
|
||||
Roger Federer
|
||||
Roman Abramovich
|
||||
Ronald Reagan
|
||||
Rosa Parks
|
||||
Rupert Murdoch
|
||||
Sacha Baron Cohen
|
||||
Shakira
|
||||
Sigmund Freud
|
||||
Simon Bolivar
|
||||
Stephen Hawking
|
||||
Stephen King
|
||||
Steve Jobs
|
||||
Sting
|
||||
Thomas Edison
|
||||
Tiger Woods
|
||||
Tim Berners Lee
|
||||
Tom Cruise
|
||||
Usain Bolt
|
||||
Vincent Van Gogh
|
||||
Vladimir Lenin
|
||||
Vladimir Putin
|
||||
Walt Disney
|
||||
Winston Churchill
|
||||
Woodrow Wilson
|
||||
Wright Brothers Orville
|
||||
@@ -0,0 +1 @@
|
||||
Apple␍Apricot␍Avocado␍Banana␍Bilberry␍Blackberry␍Blackcurrant␍Blueberry␍Boysenberry␍Currant␍Cherry␍Cherimoya␍Chico fruit␍Cloudberry␍Coconut␍Cranberry␍Cucumber␍Custard apple␍Damson␍Date␍Dragonfruit␍Durian␍Elderberry␍Feijoa␍Fig␍Goji berry␍Gooseberry␍Grape␍Raisin␍Grapefruit␍Guava␍Honeyberry␍Huckleberry␍Jabuticaba␍Jackfruit␍Jambul␍Jujube␍Juniper berry␍Kiwano␍Kiwifruit␍Kumquat␍Lemon␍Lime␍Loquat␍Longan␍Lychee␍Mango␍Mangosteen␍Marionberry␍Melon␍Cantaloupe␍Honeydew␍Watermelon␍Miracle fruit␍Mulberry␍Nectarine␍Nance␍Olive␍Orange␍Blood orange␍Clementine␍Mandarine␍Tangerine␍Papaya␍Passionfruit␍Peach␍Pear␍Persimmon␍Physalis␍Plantain␍Plum␍Prune␍Pineapple␍Plumcot␍Pomegranate␍Pomelo␍Purple mangosteen␍Quince␍Raspberry␍Salmonberry␍Rambutan␍Redcurrant␍Salal berry␍Salak␍Satsuma␍Soursop␍Star fruit␍Solanum quitoense␍Strawberry␍Tamarillo␍Tamarind␍Ugli fruit␍Yuzu
|
||||
@@ -0,0 +1,20 @@
|
||||
Sofa
|
||||
Dining Table
|
||||
Bed
|
||||
Chair
|
||||
Bookshelf
|
||||
Coffee Table
|
||||
Dresser
|
||||
Desk
|
||||
TV Stand
|
||||
Nightstand
|
||||
Cabinet
|
||||
Ottoman
|
||||
Recliner
|
||||
Wardrobe
|
||||
End Table
|
||||
Accent Chair
|
||||
Loveseat
|
||||
Futon
|
||||
Buffet
|
||||
Bar Stool
|
||||
@@ -0,0 +1,59 @@
|
||||
Ant-Man
|
||||
Aquaman
|
||||
Asterix
|
||||
The Atom
|
||||
The Avengers
|
||||
Batgirl
|
||||
Batman
|
||||
Batwoman
|
||||
Black Canary
|
||||
Black Panther
|
||||
Captain America
|
||||
Captain Marvel
|
||||
Catwoman
|
||||
Conan the Barbarian
|
||||
Daredevil
|
||||
The Defenders
|
||||
Doc Savage
|
||||
Doctor Strange
|
||||
Elektra
|
||||
Fantastic Four
|
||||
Ghost Rider
|
||||
Green Arrow
|
||||
Green Lantern
|
||||
Guardians of the Galaxy
|
||||
Hawkeye
|
||||
Hellboy
|
||||
Incredible Hulk
|
||||
Iron Fist
|
||||
Iron Man
|
||||
Marvelman
|
||||
Robin
|
||||
The Rocketeer
|
||||
The Shadow
|
||||
Spider-Man
|
||||
Sub-Mariner
|
||||
Supergirl
|
||||
Superman
|
||||
Teenage Mutant Ninja Turtles
|
||||
Thor
|
||||
The Wasp
|
||||
Watchmen
|
||||
Wolverine
|
||||
Wonder Woman
|
||||
X-Men
|
||||
Zatanna
|
||||
Zatara
|
||||
Black Adam
|
||||
Catwoman
|
||||
Deadshot
|
||||
Deadpool
|
||||
Venom
|
||||
Thanos
|
||||
Red Hood
|
||||
The Comedian
|
||||
John Constantine
|
||||
Lobo
|
||||
Amanda Waller
|
||||
Wild Dog
|
||||
Harley Quinn
|
||||
@@ -0,0 +1,39 @@
|
||||
New Year's
|
||||
Valentine's
|
||||
Easter
|
||||
International Workers
|
||||
Memorial
|
||||
Independence
|
||||
Labor
|
||||
Columbus
|
||||
Halloween
|
||||
All Saints
|
||||
All Souls
|
||||
Bonfire Night
|
||||
Veterans
|
||||
Thanksgiving
|
||||
Christmas Eve
|
||||
Christmas
|
||||
Boxing
|
||||
New Year's Eve
|
||||
Martin Luther King
|
||||
Presidents'
|
||||
St. Patrick's
|
||||
Easter Monday
|
||||
Mother's
|
||||
Father's
|
||||
Hanukkah
|
||||
Kwanzaa
|
||||
Diwali
|
||||
Navaratri
|
||||
Ramadaan
|
||||
Eid al-Fitr
|
||||
Eid al-Adha
|
||||
Chinese New Year
|
||||
Rosh Hashanah
|
||||
Yom Kippur
|
||||
Passover
|
||||
Hanami
|
||||
Día de los Muertos
|
||||
Las Posadas
|
||||
Mardi Gras
|
||||
@@ -0,0 +1,37 @@
|
||||
Anoplura
|
||||
ant
|
||||
bedbug
|
||||
bee
|
||||
beetle
|
||||
Blattodea
|
||||
caterpillar
|
||||
centipede
|
||||
Coleoptera
|
||||
Coleorrhyncha
|
||||
Dermaptera
|
||||
Diptera
|
||||
dragonfly
|
||||
fly
|
||||
Hemiptera
|
||||
hornet
|
||||
Hymenoptera
|
||||
Lepidoptera
|
||||
locust
|
||||
Mecoptera
|
||||
mosquito
|
||||
moth
|
||||
Neuroptera
|
||||
Odonata
|
||||
Orthoptera
|
||||
Phasmatodea
|
||||
Psocoptera
|
||||
scarab
|
||||
scorpion
|
||||
Siphonaptera
|
||||
spider
|
||||
tarantula
|
||||
Thysanoptera
|
||||
Thysanura
|
||||
Trichoptera
|
||||
wasp
|
||||
Zoraptera
|
||||
@@ -0,0 +1,21 @@
|
||||
anatomically correct
|
||||
biologically accurate
|
||||
scientifically accurate
|
||||
realistically portrayed
|
||||
true to life
|
||||
faithfully depicted
|
||||
precisely rendered
|
||||
exact representation
|
||||
anatomically precise
|
||||
accurately depicted
|
||||
realistically accurate
|
||||
meticulously detailed
|
||||
authentically captured
|
||||
intricately designed
|
||||
flawlessly represented
|
||||
true to form
|
||||
precisely crafted
|
||||
faithfully rendered
|
||||
veraciously illustrated
|
||||
true to nature
|
||||
impeccably portrayed
|
||||
@@ -0,0 +1 @@
|
||||
Aetherpunk␍Anthropunk␍Atompunk␍Biopunk␍Bronzepunk␍Candlepunk␍Cassettepunk␍Catholicpunk␍Clockpunk␍Cloudpunk␍Cyberpunk␍Decopunk␍Desertpunk␍Dieselpunk␍Dollpunk␍Dungeonpunk␍Ecopunk␍ElfPunk␍Flowerpunk␍Forestpunk␍Formicapunk␍Furpunk␍Futurismpunk␍Gothicpunk␍Greenpunk␍Lunarpunk␍Magicpunk␍Mesopunk␍Modempunk␍Nanopunk␍Oceanpunk␍Piratepunk␍Postcyberpunk␍Raypunk␍Rococopunk␍Silkpunk␍Solarpunk␍Steampunk␍Steelpunk␍Tidalpunk␍Yurtpunk
|
||||
@@ -0,0 +1,22 @@
|
||||
Ascended
|
||||
Brackern
|
||||
Celestial
|
||||
Dragon
|
||||
Golem
|
||||
Human
|
||||
Minotaur
|
||||
Spirit
|
||||
Titan
|
||||
Troll
|
||||
Undead
|
||||
Yeti␍Beastfolk␍Imperial␍Nord␍Redguard␍Dwemer␍Falmer␍Giant␍Goblin␍Nymph␍Android␍Robot␍Alien
|
||||
Horde
|
||||
Dragon
|
||||
Insectoid
|
||||
Humanoid
|
||||
Dragonknight
|
||||
Sorcerer
|
||||
Nightblade
|
||||
Templar
|
||||
Warden
|
||||
Necromancer
|
||||
@@ -0,0 +1 @@
|
||||
Archon␍Assassin␍Bard␍Beastlord␍Beastmaster␍Berserker␍Bladedancer␍Brigand␍Bruiser␍Cabalist␍Champion␍Channeler␍Chloromancer␍Coercer␍Conjuror␍Death Knight␍Defiler␍Demon␍Dirge␍Dominator␍Druid␍Elementalist␍Fury␍Guardian␍Hunter␍Illusionist␍Inquisitor␍Justicar␍Liberator␍Mage␍Marksman␍Monk␍Mystic␍Necromancer␍Nightblade␍Paladin␍Paragon␍Priest␍Purifier␍Pyromancer␍Ranger␍Reaver␍Riftblade␍Riftstalker␍Rogue␍Saboteur␍Sentinel␍Shadowknight␍Shaman␍Stormcaller␍Swashbuckler␍Tempest␍Templar␍Troubadour␍Void Knight␍Warden␍Warlock␍Warlord␍Warrior␍Wizard
|
||||
@@ -0,0 +1 @@
|
||||
Humanoid␍Insectoid␍Reptiloind␍Avianoid␍Alienoid␍Cetaceanoid␍Arachnoid␍Androids␍Cephalopod␍Saurianoid␍Amphibianoid␍ungoid␍Zoanoid␍Mechanoid␍Molluscanoid␍Plantoid␍Aquaticoid␍Cryptid␍Echinodermoid␍Gigantoid␍Radiogenicoid␍Felinoid␍Avianoid␍Cnidarianoid␍Bipedaloid␍Batrachoid␍Saurianoid␍Therianoid␍Rodentoid␍Octopoid␍Lupoid␍Canoid␍Ursoid␍Chitinoid␍Insectiform␍Gastropodoid␍Nautiloind␍Echinoid␍Ectoplasmic␍Procyonid␍Ctenophoranoid
|
||||
@@ -0,0 +1 @@
|
||||
Abstract
African art
Analogue
Anamorphic
Anime
Anthropomorphic
Appropriation
Architectural
Art-Deco
Art-Nouveau
Art Deco
Artisan Craft
Art Nouveau
Asian art
Aviation
Bio art
Body art
Burned
Carbon Fiber
Cartoonist
Cellshading
Cinematic
Comical
Conceptual art
Constructivism
Cubism
Dadaism
Dark
Diffracted
Digital
Digital art
Doodling
Dystopian
Environmental art
Etching
Expressionism
Expressionistic
Fantastical
Feminist art
Festive
Filigree
Fluorescence
Folk art
Fresh
Futurism
Gouache
Graffiti art
Horror
Hyperrealism
Illustrative
Impressionism
Ink
Installation art
Iridescent
Islamic art
Isometric
Kinetic art
Kurzgesagt
Land art
Latin American art
Line art
Luminescence
Malevolent
Medieval Period
Melancholic
Memphis Style
Minimalism
Museum Background
Mystical
Naive art
Nautical
Neo-Dada
Neofuturist
Neo Gothic
New Objectivity
Oil Pastel
Op art
Outsider art
Paint
Pandora
Pencil Drawing
Performance art
Phosphorescence
Photorealism
Polygon
Pop Art
Pop Surrealism
Post Apocalyptic
Post Impressionism
Postmodernism
Primitive art
Provenance
Psychic
Regionalism
Renaissance
Retro-Futurism
Rough
Social Realism
Soft
Sound art
Spectral
Spikey
Stained Glass
Street Art
Surreal
Synthwave
Thick
Thin
Toasty
Tribal
Ukiyoe
Unrealistic
Vaporwave
Vector
Vibrant
Video art
Watercolor
|
||||
@@ -0,0 +1 @@
|
||||
acorn
Alligator
apple
Arcane
Assassin
badger
bag
bag of cotton balls
bag of popcorn
bag of rubber bands
Bald eagle
ball of yarn
balloon
banana
bananas
bandana
bangle bracelet
bar of soap
baseball
baseball bat
baseball hat
basketball
beaded bracelet
beaded necklace
bed
beef
bell
belt
Bison
blouse
blowdryer
boar
bonesaw
book
bookmark
book of jokes
book of matches
boom box
bottle
bottle cap
bottle of glue
bottle of honey
bottle of ink
bottle of lotion
bottle of nail polish
bottle of oil
bottle of paint
bottle of perfume
bottle of pills
bottle of soda
bottle of sunscreen
bottle of syrup
bottle of water
bouquet of flowers
bow
bowl
bow tie
box
box of baking soda
box of chalk
box of chocolates
box of crayons
box of markers
box of Q-tips
box of tissues
bracelet
bread
broccoli
brush
buckle
bull
butter knife
button
camera
candle
candlestick
candy bar
candy cane
candy wrapper
can of beans
can of chili
can of peas
can of whipped cream
canteen
canvas
car
Caracal
card
carrot
carrots
cars
carton of ice cream
cat
catalogue
CD
cell phone
cellphone
cement stone
centipede
chain
chair
chalk
chapter book
check book
cheetah
chenille stick
chicken
chocolate
Christmas ornament
class ring
clay pot
clock
clothes
clothes pin
cobra
coffee mug
coffee pot
comb
comic book
computer
conditioner
container of pudding
cookie jar
cookie tin
cork
couch
cow
cowboy hat
craft book
credit card
crow
crowbar
cucumber
cup
dagger
Deer
deodorant
desk
dictionary
dog
dolphin
domino set
door
dove
Dragon
drawer
drill press
Dwarfs
egg
egg beater
egg timer
Elephant
empty bottle
empty jar
empty tin can
eraser
extension cord
eye liner
face wash
fake flowers
feather
feather duster
fennec fox
few batteries
fish
fishing hook
flag
flashlight
floor
flowers
flyswatter
food
football
fork
fridge
frying pan
game cartridge
game CD
garden spade
giraffe
glass
glasses
glow stick
grid paper
grocery list
hair brush
hair clip
hair pin
hair ribbon
hair tie
hammer
hamster
hand bag
handbasket
hand fan
handful of change
handheld game system
hand mirror
hanger
harmonica
helmet
hornet
Horse
house
ice cream stick
ice cube
ice pick
incense holder
ipod
ipod charger
jaguar
jar of jam
jar of peanut butter
jar of pickles
jigsaw puzzle
key
keyboard
keychain
key chain
keys
kitchen knife
knife
Koala
lace
ladle
lamp
lamp shade
laser pointer
leg warmers
lemon
letter opener
light
light bulb
lighter
lime
lion
lip gloss
lobster
locket
lotion
magazine
magnet
magnifying glass
map
marble
martini glass
matchbook
microphone
milk
miniature portrait
mirror
mobile phone
model car
money
monitor
Moose
mop
mouse pad
mp3 player
multitool
music CD
nail
nail clippers
nail filer
Native Indian
necktie
Necromancer
needle
Neptunus
Norsemen
notebook
notepad
novel
ocarina
orange
Otter
outlet
Owl
Ox
package of crisp and crunchy edibles
package of glitter
packet of seeds
pack of cards
pail
paint brush
paintbrush
pair of binoculars
pair of dice
pair of earrings
pair of glasses
pair of handcuffs
pair of knitting needles
pair of rubber gloves
pair of safety goggles
pair of scissors
pair of socks
pair of sunglasses
pair of tongs
pair of water goggles
panda
pants
paper
paperclip
pasta strainer
pearl necklace
pen
pencil
pencil holder
pepper shaker
perfume
Phoenix
phone
photo album
picture frame
piece of gum
pillow
pinecone
plastic fork
plate
plush bear
plush cat
plush dinosaur
plush dog
plush frog
plush octopus
plush pony
plush rabbit
plush unicorn
pocketknife
pocketwatch
pool stick
pop can
Poseidon
postage stamp
puddle
purse
purse/bag
quartz crystal
quilt
rabbit
Racoon
radio
rat
Red Devil
remote
rhino
ring
rock
rolling pin
roll of duct tape
roll of gauze
roll of masking tape
roll of stickers
roll of toilet paper
Rooster
rope
rubber band
rubber duck
rubber stamp
rug
rusty nail
safety pin
sailboat
salt shaker
Samurai
sandal
sandglass
sand paper
scallop shell
scarf
scotch tape
screw
screwdriver
seat belt
shampoo
shark
sharpie
shawl
sheep
sheet of paper
shirt
shirt button
shoe lace
shoes
shopping bag
shovel
Siberian Husky
sidewalk
sketch pad
slipper
small pouch
snail shell
Snake
snow bear
snowglobe
soap
soccer ball
socks
sofa
Spartan
spatula
speakers
spectacles
spice bottle
sponge
spool of ribbon
spool of string
spool of thread
spool of wire
spoon
spring
squirrel
squirt gun
statuette
steak knife
stick
sticker book
stick of incense
sticky note
stockings
stop sign
straw
street lights
sun glasses
sword
table
Tanker
tea cup
tea pot
teddies
television
tennis ball
tennis racket
thermometer
thimble
thread
tiger
tire swing
tissue box
toe ring
toilet
toilet paper tube
tomato
toothbrush
toothpaste
tooth pick
toothpick
towel
toy boat
toy car
toy plane
toy robot
toy soldier
toy top
trash bag
tree
Trojan
trucks
tube of lip balm
tube of lipstick
turtle
tv
tweezers
twister
umbrella
vase
video games
wallet
Warhammer
washcloth
washing machine
watch
water
water bottle
wedding ring
whale
whip
whistle
white out
window
wine glass
wireless control
wishbone
Wizard
wolf
wooden spoon
word search
wrench
wristwatch
zebra
zipper
|
||||
@@ -0,0 +1,204 @@
|
||||
amaranth
|
||||
arugula
|
||||
beet greens
|
||||
black olive
|
||||
bok choy
|
||||
borage greens
|
||||
broccoli rabe
|
||||
brussels sprout
|
||||
cabbage
|
||||
catsear
|
||||
celery
|
||||
celtuce
|
||||
chaya
|
||||
chickweed
|
||||
chicory
|
||||
chinese mallow
|
||||
chrysanthemum leaves
|
||||
collard greens
|
||||
common purslane
|
||||
corn salad
|
||||
cress
|
||||
dandelion
|
||||
endive
|
||||
fat hen
|
||||
fiddlehead
|
||||
fluted pumpkin
|
||||
garden rocket
|
||||
golden samphire
|
||||
good king henry
|
||||
greater plantain
|
||||
kai-lan
|
||||
kale
|
||||
komatsuna
|
||||
kuka
|
||||
lagos bologi
|
||||
lamb's lettuce
|
||||
lamb's quarters
|
||||
land cress
|
||||
lettuce
|
||||
lizard's tail
|
||||
malabar spinach
|
||||
melokhia
|
||||
miner's lettuce
|
||||
mizuna greens
|
||||
mustard
|
||||
napa cabbage
|
||||
new zealand spinach
|
||||
orache
|
||||
pak choy
|
||||
paracress
|
||||
pea sprout
|
||||
poke
|
||||
radicchio
|
||||
samphire
|
||||
sea beet
|
||||
sea kale
|
||||
sierra leone bologi
|
||||
soko
|
||||
sorrel
|
||||
spinach
|
||||
summer purslane
|
||||
swiss chard
|
||||
tatsoi
|
||||
turnip greens
|
||||
watercress
|
||||
water spinach
|
||||
wheatgrass
|
||||
winter purslane
|
||||
yarrow
|
||||
yao choy
|
||||
avocado
|
||||
bell pepper
|
||||
bitter melon
|
||||
chayote
|
||||
cucumber
|
||||
ivy gourd
|
||||
eggplant
|
||||
luffa
|
||||
olive fruit
|
||||
pumpkin
|
||||
squash
|
||||
corn
|
||||
sweet pepper
|
||||
tinda
|
||||
tomatillo
|
||||
tomato
|
||||
west indian gherkin
|
||||
winter melon
|
||||
zucchini
|
||||
artichoke
|
||||
broccoli
|
||||
caper
|
||||
cauliflower
|
||||
courgette flowers
|
||||
squash blossoms
|
||||
american groundnut
|
||||
azuki bean
|
||||
black-eyed pea
|
||||
chickpea
|
||||
common bean
|
||||
drumstick
|
||||
dolichos bean
|
||||
fava bean
|
||||
garbanzo
|
||||
green bean
|
||||
guar
|
||||
horse gram
|
||||
indian pea
|
||||
lentil
|
||||
lima bean
|
||||
moth bean
|
||||
mung bean
|
||||
okra
|
||||
pea
|
||||
peanut
|
||||
pigeon pea
|
||||
ricebean
|
||||
runner bean
|
||||
snap pea
|
||||
snow pea
|
||||
soybean
|
||||
tarwi
|
||||
tepary bean
|
||||
urad bean
|
||||
velvet bean
|
||||
winged bean
|
||||
yardlong bean
|
||||
asparagus
|
||||
cardoon
|
||||
celeriac
|
||||
celery
|
||||
florence fennel
|
||||
kohlrabi
|
||||
kurrat
|
||||
lemongrass
|
||||
leek
|
||||
lotus root
|
||||
nopal
|
||||
onion
|
||||
pearl onion
|
||||
potato onion
|
||||
prussian asparagus
|
||||
spring onion
|
||||
shallot
|
||||
tree onion
|
||||
welsh onion
|
||||
wild leek
|
||||
ahipa
|
||||
arracacha
|
||||
bamboo shoot
|
||||
beetroot
|
||||
burdock
|
||||
broadleaf arrowhead
|
||||
camas
|
||||
canna
|
||||
carrot
|
||||
cassava
|
||||
chinese artichoke
|
||||
daikon
|
||||
earthnut pea
|
||||
elephant foot yam
|
||||
ensete
|
||||
galangal
|
||||
jerusalem artichoke
|
||||
jicama
|
||||
mashua
|
||||
parsnip
|
||||
pignut
|
||||
potato
|
||||
prairie turnip
|
||||
radish
|
||||
rutabaga
|
||||
salsify
|
||||
scorzonera
|
||||
skirret
|
||||
swede
|
||||
sweet potato
|
||||
taro
|
||||
tigernut
|
||||
turmeric
|
||||
turnip
|
||||
ulluco
|
||||
wasabi
|
||||
water caltrop
|
||||
water chestnut
|
||||
yacon
|
||||
yam
|
||||
aonori
|
||||
arame
|
||||
carola
|
||||
dabberlocks
|
||||
dulse
|
||||
hijiki
|
||||
kombu
|
||||
laver
|
||||
mozuku
|
||||
nori
|
||||
ogonori
|
||||
sea grape
|
||||
sea lettuce
|
||||
wakame
|
||||
tofu
|
||||
tempeh
|
||||
seitan
|
||||
Reference in New Issue
Block a user