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