Compare commits

..

42 Commits

Author SHA1 Message Date
Carter Li 6b92659512 Merge pull request #1752 from fastfetch-cli/dev
Release: v2.43.0
2025-05-14 09:41:33 +08:00
Carter Li 7e04305d1c CI: silence spell check errors 2025-05-14 09:25:15 +08:00
Carter Li 87e13543da GPU (Linux): embed asahi_drm.h 2025-05-14 08:59:53 +08:00
Carter Li 7a2cbc060f 3rdparty (yyjson): upgrade to 0.11.1 2025-05-14 08:52:06 +08:00
Carter Li f22d73d473 PhysicalDisk: trim white spaces of serial 2025-05-13 18:29:46 +08:00
李通洲 e629126d73 Doc: update changelog 2025-05-13 15:52:30 +08:00
李通洲 9ac635e2e6 Media (Windows): detect player name (UMP apps only) 2025-05-13 15:46:33 +08:00
李通洲 1b1b0521f4 Doc: update changelog 2025-05-13 13:49:54 +08:00
李通洲 41d0f61ee0 GPU (AMD): remove usage of ADL2_Adapter_VRAMUsage_Get
It reports dedicated GPU memory usage too.

Ref: https://github.com/GPUOpen-LibrariesAndSDKs/display-library/issues/48
2025-05-13 13:39:42 +08:00
李通洲 9de5d9008b Release: v2.43.0 2025-05-13 10:37:52 +08:00
李通洲 576a9cc6fe Revert "Vulkan: use VK_API_VERSION_* instead of deprecated VK_VERSION_*"
Breaks building with old vulkan-headers

This reverts commit 36b0fdbcda.
2025-05-13 10:02:38 +08:00
李通洲 bd61d08afe Sound (macOS): report the volume of muted device as 0% 2025-05-13 09:35:13 +08:00
李通洲 4672b78481 Sound: don't show 255 in custom format
Fix #1750
2025-05-13 09:30:30 +08:00
李通洲 36b0fdbcda Vulkan: use VK_API_VERSION_* instead of deprecated VK_VERSION_* 2025-05-13 09:29:21 +08:00
Carter Li 7626ef6eaa GPU (Linux): fix CI errors
F**k Ubuntu
2025-05-10 21:40:33 +08:00
Carter Li 115108b3f1 GPU (Linux): detect core usage when libamdgpu is not available 2025-05-10 20:57:51 +08:00
Carter Li 154f9f462b GPU (Linux): detect VRAM type of AMD GPUs 2025-05-10 20:57:51 +08:00
Marvin Friedrich a96a9fc31d Smbios: fix transitive include for loff_t (#1746) 2025-05-10 10:49:22 +08:00
李通洲 23b43244c5 GPU (AMD): seems ADL2_Adapter_VRAMUsage_Get reports system mem usage only, not full memory usage
Because VRAMUsage reports a value which is smaller than DedicatedVRAMUsage
2025-05-09 22:46:31 +08:00
Carter Li 9dfb404a0d GPU (AMD): more verbose logs 2025-05-09 22:01:29 +08:00
Carter Li ff3028c656 GPU: don't hide unknown type of GPUs by default
Fix #1742
2025-05-09 21:58:41 +08:00
Carter Li 2f706ed494 Smbios: discard usless values 2025-05-09 21:55:31 +08:00
Carter Li 06427ee62b Media (Linux): fix duplicated playback status 2025-05-09 19:23:28 +08:00
李通洲 fe66eb3df0 GPU (Windows): fix incorrect used shared memory size 2025-05-08 23:20:53 +08:00
李通洲 6e1ab12399 Memory / Swap: always initialize local variables 2025-05-08 23:17:22 +08:00
Samuli Thomasson 484e05eae3 GPU: optionally hide unknown GPUs (#1742)
The current default behavior of not hiding any GPUs is retained. The new
feature of hiding unknown or unrecognized GPUs can be enabled with
hide-type = "unknown".
2025-05-07 22:06:47 +08:00
Joe_ 5d3fb98072 Logo (Builtin): add Hydra Framework logo (#1740)
* Added: Hydra Framework logo

* Remove extra line: hydra.txt
2025-05-07 03:02:36 -05:00
李通洲 0c30590088 Builtin (Logo): new AthenaOS logo
Fix #1741
2025-05-07 10:45:21 +08:00
李通洲 20cd4ce125 Logo (Builtin): sd '\$\{c(\d)\}' '$$$1' * 2025-05-07 10:44:05 +08:00
apocelipes 1c7aa89228 TerminalShell: use ffBinaryExtractStrings result as possible (#1739) 2025-05-06 18:49:29 +08:00
apocelipes f270255770 DisplayServer (Linux): fix xcb_connect error handling (#1735) 2025-05-06 03:18:53 -05:00
李通洲 4b62a3c75b 3rdparty: upgrade yyjson to 0.11.0 2025-05-06 16:12:58 +08:00
李通洲 1557f0c556 Media (macOS): support macOS 15.4
Fix #1737
2025-05-06 16:12:58 +08:00
Carter Li ef7f61309f GPU (Linux): fix asahi linux support again
Found in kernel-headers-6.14.4-400.asahi.fc42.aarch64
2025-05-06 09:27:54 +08:00
李通洲 f59491b25d Disk (Linux): fix possible bug on 32-bit platforms
Fix #1734
2025-05-05 22:05:22 +08:00
李通洲 e3592eb2c3 CPU (FreeBSD): simplify physical core count detection 2025-05-05 13:41:12 +08:00
Carter Li 305776eb94 CPU (SunOS): support physical core count and package count detection 2025-05-02 14:24:30 +08:00
Carter Li 599e0d393d Display: use height to calculate scale factor
Seems more accurate
2025-05-01 21:28:04 +08:00
李通洲 561574ae94 CPU (Windows): always use XxxW 2025-04-30 16:10:53 +08:00
李通洲 3dd78422eb Global: Improve ARRAY_SIZE macro using __is_array 2025-04-30 14:47:37 +08:00
李通洲 5c546ab8e7 Parsing: silence compiler warnings 2025-04-30 14:14:28 +08:00
Carter Li 3e9274040d Packaging: update debian stuff [ci skip] 2025-04-30 14:12:26 +08:00
179 changed files with 6399 additions and 3618 deletions
+1 -1
View File
@@ -1,5 +1,5 @@
[codespell]
check-filenames =
builtin = clear,rare,usage,informal
skip = */.git,*/cmake-build-*,*/.idea,*/completions,*/presets,*/screenshots,*/tests,*/3rdparty,*/logo/ascii
skip = */.git,*/cmake-build-*,*/.idea,*/completions,*/presets,*/screenshots,*/tests,*/3rdparty,*/logo/ascii,./src/detection/gpu/asahi_drm.h
ignore-words-list = iterm,compiletime,unknwn,pengwin,siduction,master,slave,sur,doas,conexant,ags,bu
+22
View File
@@ -1,3 +1,25 @@
# 2.43.0
Features:
* Support physical core count and package count detection on Solaris (CPU, SunOS)
* Improve physical core count detection on FreeBSD (CPU, FreeBSD)
* Add option to hide unknown GPUs (GPU)
* Detect VRAM type of AMD GPUs on Linux (GPU, Linux)
* Support playing media detection on macOS 15.4 (#1737, Media, macOS)
* Whether it works on newer versions is unknown
* Detect player name for Windows UMP apps (Media, Windows)
Bugfixes:
* Fix disk usage detection on 32-bit Linux (#1734, Disk, Linux)
* Fix compiling on Asahi Linux (GPU, Linux)
* Fix duplicated playback status (Media, Linux)
* Don't show 255 in custom format when muted on macOS (#1750, Sound, macOS)
* Remove shared memory detection for AMD GPUs, which doesn't work as expected (GPU, Windows)
Logos:
* new AthenaOS
* add Hydra Framework
# 2.42.0
Changes:
+6 -2
View File
@@ -1,7 +1,7 @@
cmake_minimum_required(VERSION 3.12.0) # target_link_libraries with OBJECT libs & project homepage url
project(fastfetch
VERSION 2.42.0
VERSION 2.43.0
LANGUAGES C
DESCRIPTION "Fast neofetch-like system information tool"
HOMEPAGE_URL "https://github.com/fastfetch-cli/fastfetch"
@@ -326,6 +326,11 @@ endif()
fastfetch_encode_c_string("${DATATEXT_JSON_HELP}" DATATEXT_JSON_HELP)
fastfetch_load_text(src/data/structure.txt DATATEXT_STRUCTURE)
if(APPLE)
# See src/detection/media/media_apple.m
fastfetch_load_text(src/data/nowPlaying.scptd DATATEXT_NOWPLAYING)
endif()
configure_file(src/fastfetch_config.h.in fastfetch_config.h @ONLY)
configure_file(src/fastfetch_datatext.h.in fastfetch_datatext.h @ONLY)
if(APPLE)
@@ -342,7 +347,6 @@ foreach(file ${LOGO_FILES})
fastfetch_load_text("${file}" content)
get_filename_component(file "${file}" NAME_WE)
string(TOUPPER "${file}" file)
string(REGEX REPLACE "\\$\\{c([0-9]+)\\}" "$\\1" content "${content}")
set(LOGO_BUILTIN_H "${LOGO_BUILTIN_H}#define FASTFETCH_DATATEXT_LOGO_${file} ${content}\n")
endforeach()
file(GENERATE OUTPUT logo_builtin.h CONTENT "${LOGO_BUILTIN_H}")
+6
View File
@@ -1,3 +1,9 @@
fastfetch (2.42.0) jammy; urgency=medium
* Update to 2.42.0
-- Carter Li <zhangsongcui@live.cn> Wed, 30 Apr 2025 14:08:57 +0800
fastfetch (2.41.0) jammy; urgency=medium
* Update to 2.41.0
+1 -1
View File
@@ -1 +1 @@
fastfetch_2.41.0_source.buildinfo universe/utils optional
fastfetch_2.42.0_source.buildinfo universe/utils optional
+1
View File
@@ -2053,6 +2053,7 @@
"enum": [
"integrated",
"discrete",
"unknown",
"none"
],
"default": "none"
+1 -1
View File
@@ -1,6 +1,6 @@
{
"home": "https://github.com/ibireme/yyjson",
"license": "MIT ( embed in source )",
"version": "0.10.0",
"version": "0.11.1",
"author": "ibireme"
}
+2508 -1264
View File
File diff suppressed because it is too large Load Diff
+800 -570
View File
File diff suppressed because it is too large Load Diff
+3 -3
View File
@@ -200,14 +200,14 @@ void ffParseDuration(uint64_t totalSeconds, FFstrbuf* result)
return;
}
uint32_t seconds = totalSeconds % 60;
uint32_t seconds = (uint32_t) (totalSeconds % 60);
totalSeconds /= 60;
if (seconds >= 30)
totalSeconds++;
uint32_t minutes = totalSeconds % 60;
uint32_t minutes = (uint32_t) (totalSeconds % 60);
totalSeconds /= 60;
uint32_t hours = totalSeconds % 24;
uint32_t hours = (uint32_t) (totalSeconds % 24);
totalSeconds /= 24;
uint32_t days = (uint32_t) totalSeconds;
+2 -1
View File
@@ -1139,12 +1139,13 @@
},
{
"long": "gpu-hide-type",
"desc": "Specify which types of GPUs should not be displayed",
"desc": "Specify which types of GPUs should not be displayed (default: all GPUs are shown, regardless of recognition)",
"arg": {
"type": "enum",
"enum": {
"integrated": "Hide integrated GPUs",
"discrete": "Hide discrete GPUs",
"unknown": "Hide unknown (unrecognized) GPUs",
"none": "Do not hide any GPUs"
},
"default": "none"
+24
View File
@@ -0,0 +1,24 @@
use scripting additions
use framework "/System/Library/PrivateFrameworks/MediaRemote.framework"
set MRNowPlayingRequest to current application's NSClassFromString("MRNowPlayingRequest")
if MRNowPlayingRequest's localNowPlayingItem() is missing value then
return
end if
if MRNowPlayingRequest's localIsPlaying() then
set status to "Playing"
else
set status to "Paused"
end if
set infoDict to MRNowPlayingRequest's localNowPlayingItem()'s nowPlayingInfo()
set bundleObj to MRNowPlayingRequest's localNowPlayingPlayerPath()'s client()
return status & "
" & (infoDict's valueForKey:"kMRMediaRemoteNowPlayingInfoTitle" as text) & "
" & (infoDict's valueForKey:"kMRMediaRemoteNowPlayingInfoArtist" as text) & "
" & (infoDict's valueForKey:"kMRMediaRemoteNowPlayingInfoAlbum" as text) & "
" & (bundleObj's bundleIdentifier() as text) & "
" & (bundleObj's displayName() as text)
+3 -34
View File
@@ -36,7 +36,7 @@ const char* ffDetectCPUImpl(const FFCPUOptions* options, FFCPUResult* cpu)
return "sysctlbyname(hw.model) failed";
cpu->coresLogical = (uint16_t) ffSysctlGetInt("hw.ncpu", 1);
cpu->coresPhysical = 0;
cpu->coresPhysical = (uint16_t) ffSysctlGetInt("kern.smp.cores", 0);
cpu->coresOnline = (uint16_t) ffSysctlGetInt("kern.smp.cpus", cpu->coresLogical);
FF_STRBUF_AUTO_DESTROY buffer = ffStrbufCreate();
@@ -57,39 +57,8 @@ const char* ffDetectCPUImpl(const FFCPUOptions* options, FFCPUResult* cpu)
// </children>
// </group>
// </groups>
char* line = NULL;
size_t len = 0;
bool inLvl2 = false, threadGroup = false;
uint32_t cpuCount = 0;
while (ffStrbufGetline(&line, &len, &buffer))
{
if (!inLvl2)
{
if (ffStrStartsWith(line, " <group level=\"2\""))
{
inLvl2 = true;
cpuCount = 0;
threadGroup = false;
}
else if (ffStrStartsWith(line, " <group level=\"1\""))
cpu->packages++;
}
else
{
if (ffStrEquals(line, " </group>"))
{
cpu->coresPhysical += threadGroup ? 1 : cpuCount;
inLvl2 = false;
}
else if (cpuCount == 0 && ffStrStartsWith(line, " <cpu count=\""))
cpuCount = (uint32_t) strtoul(line + strlen(" <cpu count=\""), NULL, 10);
else if (cpuCount > 0 && ffStrStartsWith(line, " <flags>"))
{
if (ffStrContains(line, "<flag name=\"THREAD\">THREAD group</flag>"))
threadGroup = true;
}
}
}
for (char* p = buffer.chars; (p = strstr(p, "\n </group>\n")); ++p)
cpu->packages++;
}
#if FF_HAVE_CPUSET && (__x86_64__ || __i386__)
+44 -1
View File
@@ -1,5 +1,6 @@
#include "cpu.h"
#include "common/processing.h"
#include "util/stringUtils.h"
#include <kstat.h>
static const char* detectCPUTempByKstat(kstat_ctl_t* kc, FFCPUResult* cpu)
@@ -61,6 +62,45 @@ static inline void kstatFreeWrap(kstat_ctl_t** pkc)
kstat_close(*pkc);
}
static inline uint16_t countTypeId(kstat_ctl_t* kc, const char* type)
{
uint64_t low = 0, high = 0;
for (kstat_t* ksp = kc->kc_chain; ksp; ksp = ksp->ks_next)
{
if (ffStrStartsWith(ksp->ks_module, "cpu_info"))
{
if (kstat_read(kc, ksp, NULL) < 0)
continue;
kstat_named_t* stat = kstat_data_lookup(ksp, type);
if (!stat)
continue;
uint32_t id = 0;
switch (stat->data_type)
{
#ifdef _INT64_TYPE
case KSTAT_DATA_INT64:
case KSTAT_DATA_UINT64:
id = (uint32_t) stat->value.ui64;
break;
#endif
case KSTAT_DATA_INT32:
case KSTAT_DATA_UINT32:
id = stat->value.ui32;
break;
default:
continue;
}
if (__builtin_expect(id > 64, false))
high |= 1ULL << (id - 64);
else
low |= 1ULL << id;
}
}
return (uint16_t) (__builtin_popcountll(low) + __builtin_popcountll(high));
}
const char* ffDetectCPUImpl(const FFCPUOptions* options, FFCPUResult* cpu)
{
__attribute__((__cleanup__(kstatFreeWrap))) kstat_ctl_t* kc = kstat_open();
@@ -93,9 +133,12 @@ const char* ffDetectCPUImpl(const FFCPUOptions* options, FFCPUResult* cpu)
if (ks && kstat_read(kc, ks, NULL) >= 0)
{
kstat_named_t* kn = kstat_data_lookup(ks, "ncpus");
if (kn) cpu->coresLogical = cpu->coresPhysical = cpu->coresOnline = (uint16_t) kn->value.ui32;
if (kn) cpu->coresLogical = cpu->coresOnline = (uint16_t) kn->value.ui32;
}
cpu->packages = countTypeId(kc, "chip_id");
cpu->coresPhysical = countTypeId(kc, "core_id");
if (options->temp)
{
if (detectCPUTempByKstat(kc, cpu) != NULL)
+2 -2
View File
@@ -22,11 +22,11 @@ static const char* detectThermalTemp(double* result)
__attribute__((__cleanup__(ffPdhOpenCloseQuery))) HQUERY query = NULL;
if (PdhOpenQuery(NULL, 0, &query) != ERROR_SUCCESS)
if (PdhOpenQueryW(NULL, 0, &query) != ERROR_SUCCESS)
return "Failed to open PDH query";
HCOUNTER counter = NULL;
if (PdhAddEnglishCounter(query,
if (PdhAddEnglishCounterW(query,
L"\\Thermal Zone Information(*)\\Temperature",
0,
&counter) != ERROR_SUCCESS)
+3 -3
View File
@@ -240,9 +240,9 @@ static void detectStats(FFDisk* disk)
if(statvfs(disk->mountpoint.chars, &fs) != 0)
memset(&fs, 0, sizeof(fs)); //Set all values to 0, so our values get initialized to 0 too
disk->bytesTotal = fs.f_blocks * fs.f_frsize;
disk->bytesFree = fs.f_bfree * fs.f_frsize;
disk->bytesAvailable = fs.f_bavail * fs.f_frsize;
disk->bytesTotal = fs.f_blocks * (uint64_t) fs.f_frsize;
disk->bytesFree = fs.f_bfree * (uint64_t) fs.f_frsize;
disk->bytesAvailable = fs.f_bavail * (uint64_t) fs.f_frsize;
disk->bytesUsed = 0; // To be filled in ./disk.c
if (fs.f_files >= fs.f_ffree)
+5 -1
View File
@@ -335,6 +335,7 @@ const char* ffdsConnectXcbRandr(FFDisplayServerResult* result)
{
FF_LIBRARY_LOAD(xcbRandr, "dlopen libxcb-randr failed", "libxcb-randr" FF_LIBRARY_EXTENSION, 1)
FF_LIBRARY_LOAD_SYMBOL_MESSAGE(xcbRandr, xcb_connect)
FF_LIBRARY_LOAD_SYMBOL_MESSAGE(xcbRandr, xcb_connection_has_error)
FF_LIBRARY_LOAD_SYMBOL_MESSAGE(xcbRandr, xcb_get_setup)
FF_LIBRARY_LOAD_SYMBOL_MESSAGE(xcbRandr, xcb_setup_roots_iterator)
FF_LIBRARY_LOAD_SYMBOL_MESSAGE(xcbRandr, xcb_screen_next)
@@ -368,8 +369,11 @@ const char* ffdsConnectXcbRandr(FFDisplayServerResult* result)
data.connection = ffxcb_connect(NULL, NULL);
if(data.connection == NULL)
if(ffxcb_connection_has_error(data.connection) > 0)
{
ffxcb_disconnect(data.connection);
return "xcb_connect() failed";
}
data.result = result;
-3
View File
@@ -20,9 +20,6 @@ extern int ADL2_Adapter_Graphic_Core_Info_Get(ADL_CONTEXT_HANDLE context, int iA
// Function to retrieve memory information from the adapter. Version 2
extern int ADL2_Adapter_MemoryInfo2_Get(ADL_CONTEXT_HANDLE context, int iAdapterIndex, ADLMemoryInfo2* lpMemoryInfo2);
// This function retrieves the VRAM usage of given adapter.
extern int ADL2_Adapter_VRAMUsage_Get(ADL_CONTEXT_HANDLE context, int iAdapterIndex, int* iVRAMUsageInMB);
// This function retrieves the Dedicated VRAM usage of given adapter.
extern int ADL2_Adapter_DedicatedVRAMUsage_Get(ADL_CONTEXT_HANDLE context, int iAdapterIndex, int* iVRAMUsageInMB);
File diff suppressed because it is too large Load Diff
+1 -20
View File
@@ -49,7 +49,6 @@ struct FFAdlData {
FF_LIBRARY_SYMBOL(ADL2_Adapter_Graphic_Core_Info_Get)
FF_LIBRARY_SYMBOL(ADL2_Adapter_MemoryInfo2_Get)
FF_LIBRARY_SYMBOL(ADL2_Adapter_DedicatedVRAMUsage_Get)
FF_LIBRARY_SYMBOL(ADL2_Adapter_VRAMUsage_Get)
FF_LIBRARY_SYMBOL(ADL2_Adapter_ASICFamilyType_Get)
FF_LIBRARY_SYMBOL(ADL2_Overdrive_Caps)
FF_LIBRARY_SYMBOL(ADL2_OverdriveN_CapabilitiesX2_Get)
@@ -91,7 +90,6 @@ const char* ffDetectAmdGpuInfo(const FFGpuDriverCondition* cond, FFGpuDriverResu
FF_LIBRARY_LOAD_SYMBOL_VAR_MESSAGE(atiadl, adlData, ADL2_Adapter_Graphic_Core_Info_Get)
FF_LIBRARY_LOAD_SYMBOL_VAR_MESSAGE(atiadl, adlData, ADL2_Adapter_MemoryInfo2_Get)
FF_LIBRARY_LOAD_SYMBOL_VAR_MESSAGE(atiadl, adlData, ADL2_Adapter_DedicatedVRAMUsage_Get)
FF_LIBRARY_LOAD_SYMBOL_VAR_MESSAGE(atiadl, adlData, ADL2_Adapter_VRAMUsage_Get)
FF_LIBRARY_LOAD_SYMBOL_VAR_MESSAGE(atiadl, adlData, ADL2_Adapter_ASICFamilyType_Get)
FF_LIBRARY_LOAD_SYMBOL_VAR_MESSAGE(atiadl, adlData, ADL2_Overdrive_Caps)
FF_LIBRARY_LOAD_SYMBOL_VAR_MESSAGE(atiadl, adlData, ADL2_OverdriveN_CapabilitiesX2_Get)
@@ -188,29 +186,12 @@ const char* ffDetectAmdGpuInfo(const FFGpuDriverCondition* cond, FFGpuDriverResu
FF_DEBUG("ADL2_Adapter_DedicatedVRAMUsage_Get returned %s (%d), usage: %d MB",
ffAdlStatusToString(status), status, vramUsage);
if (status == ADL_OK) {
if (status == ADL_OK && vramUsage >= 0) {
result.memory->used = (uint64_t) vramUsage * 1024 * 1024;
FF_DEBUG("Dedicated VRAM usage: %llu bytes (%d MB)", result.memory->used, vramUsage);
} else {
FF_DEBUG("Failed to get dedicated VRAM usage");
}
if (result.sharedMemory)
{
vramUsage = 0;
status = adlData.ffADL2_Adapter_VRAMUsage_Get(adlData.apiHandle, device->iAdapterIndex, &vramUsage);
FF_DEBUG("ADL2_Adapter_VRAMUsage_Get returned %s (%d), usage: %d MB",
ffAdlStatusToString(status), status, vramUsage);
if (status == ADL_OK) {
uint64_t totalUsage = (uint64_t) vramUsage * 1024 * 1024;
result.sharedMemory->used = totalUsage - result.memory->used;
FF_DEBUG("Total VRAM usage: %llu bytes, Shared VRAM usage: %llu bytes (%llu MB)",
totalUsage, result.sharedMemory->used, result.sharedMemory->used / (1024 * 1024));
} else {
FF_DEBUG("Failed to get total VRAM usage");
}
}
}
if (result.memoryType)
-91
View File
@@ -1,91 +0,0 @@
#if __aarch64__ && FF_HAVE_DRM
#include <drm.h>
#include <fcntl.h>
#include <sys/ioctl.h>
#if __has_include(<drm/asahi_drm.h>)
#include <drm/asahi_drm.h>
#else
// https://github.com/AsahiLinux/linux/blob/asahi/include/uapi/drm/asahi_drm.h
/* SPDX-License-Identifier: MIT */
/* Copyright (C) The Asahi Linux Contributors */
#define DRM_ASAHI_UNSTABLE_UABI_VERSION 10011
#define DRM_ASAHI_GET_PARAMS 0x00
#define DRM_ASAHI_MAX_CLUSTERS 32
struct drm_asahi_params_global
{
__u32 unstable_uabi_version;
__u32 pad0;
__u64 feat_compat;
__u64 feat_incompat;
__u32 gpu_generation;
__u32 gpu_variant;
__u32 gpu_revision;
__u32 chip_id;
__u32 num_dies;
__u32 num_clusters_total;
__u32 num_cores_per_cluster;
__u32 num_frags_per_cluster;
__u32 num_gps_per_cluster;
__u32 num_cores_total_active;
__u64 core_masks[DRM_ASAHI_MAX_CLUSTERS];
__u32 vm_page_size;
__u32 pad1;
__u64 vm_user_start;
__u64 vm_user_end;
__u64 vm_usc_start;
__u64 vm_usc_end;
__u64 vm_kernel_min_size;
__u32 max_syncs_per_submission;
__u32 max_commands_per_submission;
__u32 max_commands_in_flight;
__u32 max_attachments;
__u32 timer_frequency_hz;
__u32 min_frequency_khz;
__u32 max_frequency_khz;
__u32 max_power_mw;
__u32 result_render_size;
__u32 result_compute_size;
__u32 firmware_version[4];
};
struct drm_asahi_get_params
{
/** @extensions: Pointer to the first extension struct, if any */
__u64 extensions;
/** @param: Parameter group to fetch (MBZ) */
__u32 param_group;
/** @pad: MBZ */
__u32 pad;
/** @value: User pointer to write parameter struct */
__u64 pointer;
/** @value: Size of user buffer, max size supported on return */
__u64 size;
};
enum
{
DRM_IOCTL_ASAHI_GET_PARAMS = DRM_IOWR(DRM_COMMAND_BASE + DRM_ASAHI_GET_PARAMS, struct drm_asahi_get_params),
};
#endif // __has_include
#endif // FF_HAVE_DRM
+60 -35
View File
@@ -21,10 +21,16 @@
#include <sys/ioctl.h>
#endif
#include "gpu_asahi.h"
#define FF_STR_INDIR(x) #x
#define FF_STR(x) FF_STR_INDIR(x)
#if defined(FF_HAVE_DRM) && defined(__aarch64__)
// https://github.com/alyssarosenzweig/linux/blob/agx-uapi-v7/include/uapi/drm/asahi_drm.h
// Found in kernel-headers-6.14.4-400.asahi.fc42.aarch64
#if __has_include(<drm/asahi_drm.h>)
#include <drm/asahi_drm.h>
#else
#include "asahi_drm.h"
#endif
#define FF_HAVE_DRM_ASAHI 1
#endif
static bool pciDetectDriver(FFstrbuf* result, FFstrbuf* pciDir, FFstrbuf* buffer, FF_MAYBE_UNUSED const char* drmKey)
{
@@ -140,6 +146,26 @@ static const char* drmDetectAmdSpecific(const FFGPUOptions* options, FFGPUResult
gpu->frequency = (uint32_t) (gpuInfo.max_engine_clk / 1000u);
gpu->index = FF_GPU_INDEX_UNSET;
gpu->type = gpuInfo.ids_flags & AMDGPU_IDS_FLAGS_FUSION ? FF_GPU_TYPE_INTEGRATED : FF_GPU_TYPE_DISCRETE;
#define FF_VRAM_CASE(name, value) case value /* AMDGPU_VRAM_TYPE_ ## name */: ffStrbufSetStatic(&gpu->memoryType, #name); break
switch (gpuInfo.vram_type)
{
FF_VRAM_CASE(UNKNOWN, 0);
FF_VRAM_CASE(GDDR1, 1);
FF_VRAM_CASE(DDR2, 2);
FF_VRAM_CASE(GDDR3, 3);
FF_VRAM_CASE(GDDR4, 4);
FF_VRAM_CASE(GDDR5, 5);
FF_VRAM_CASE(HBM, 6);
FF_VRAM_CASE(DDR3, 7);
FF_VRAM_CASE(DDR4, 8);
FF_VRAM_CASE(GDDR6, 9);
FF_VRAM_CASE(DDR5, 10);
FF_VRAM_CASE(LPDDR4, 11);
FF_VRAM_CASE(LPDDR5, 12);
default:
ffStrbufAppendF(&gpu->memoryType, "Unknown (%u)", gpuInfo.vram_type);
break;
}
struct amdgpu_heap_info heapInfo;
if (ffamdgpu_query_heap_info(handle, AMDGPU_GEM_DOMAIN_VRAM, 0, &heapInfo) >= 0)
@@ -225,6 +251,11 @@ static void pciDetectAmdSpecific(const FFGPUOptions* options, FFGPUResult* gpu,
gpu->shared.used = value;
}
}
ffStrbufSubstrBefore(pciDir, pciDirLen);
ffStrbufAppendS(pciDir, "/gpu_busy_percent");
if (ffReadFileBuffer(pciDir->chars, buffer) && (value = ffStrbufToUInt(buffer, 0)))
gpu->coreUsage = (double) value;
}
}
@@ -590,13 +621,13 @@ static const char* detectPci(const FFGPUOptions* options, FFlist* gpus, FFstrbuf
#if __aarch64__
FF_MAYBE_UNUSED static const char* drmDetectAsahiSpecific(FFGPUResult* gpu, const char* name, FFstrbuf* buffer, const char* drmKey)
FF_MAYBE_UNUSED static const char* drmDetectAsahiSpecific(FFGPUResult* gpu, const char* name, FF_MAYBE_UNUSED FFstrbuf* buffer, FF_MAYBE_UNUSED const char* drmKey)
{
if (sscanf(name, "agx-t%lu", &gpu->deviceId) == 1)
ffStrbufSetStatic(&gpu->name, ffCPUAppleCodeToName((uint32_t) gpu->deviceId));
ffStrbufSetStatic(&gpu->vendor, FF_GPU_VENDOR_NAME_APPLE);
#if FF_HAVE_DRM
#if FF_HAVE_DRM_ASAHI
ffStrbufSetS(buffer, "/dev/dri/");
ffStrbufAppendS(buffer, drmKey);
FF_AUTO_CLOSE_FD int fd = open(buffer->chars, O_RDONLY);
@@ -609,38 +640,32 @@ FF_MAYBE_UNUSED static const char* drmDetectAsahiSpecific(FFGPUResult* gpu, cons
.size = sizeof(paramsGlobal),
}) >= 0)
{
ffStrbufAppendF(&gpu->driver, " %u", paramsGlobal.unstable_uabi_version);
// They removed `unstable_uabi_version` from the struct. Hopefully they won't introduce new ABI changes.
gpu->coreCount = (int32_t) (paramsGlobal.num_clusters_total * paramsGlobal.num_cores_per_cluster);
gpu->frequency = paramsGlobal.max_frequency_khz / 1000;
gpu->deviceId = paramsGlobal.chip_id;
// FIXME: They will introduce ABI breaking changes. Always check the latest version
// https://www.reddit.com/r/AsahiLinux/comments/1ei2qiv/comment/lgm0v5s/
if (paramsGlobal.unstable_uabi_version == DRM_ASAHI_UNSTABLE_UABI_VERSION)
if (!gpu->name.length)
{
gpu->coreCount = (int) paramsGlobal.num_cores_total_active;
gpu->frequency = paramsGlobal.max_frequency_khz / 1000;
gpu->deviceId = paramsGlobal.chip_id;
if (!gpu->name.length)
{
const char* variant = " Unknown";
switch (paramsGlobal.gpu_variant) {
case 'G':
variant = "";
break;
case 'S':
variant = " Pro";
break;
case 'C':
variant = " Max";
break;
case 'D':
variant = " Ultra";
break;
}
ffStrbufSetF(&gpu->name, "Apple M%d%s (G%d%c %02X)",
paramsGlobal.gpu_generation - 12, variant,
paramsGlobal.gpu_generation, paramsGlobal.gpu_variant,
paramsGlobal.gpu_revision + 0xA0);
const char* variant = " Unknown";
switch (paramsGlobal.gpu_variant) {
case 'G':
variant = "";
break;
case 'S':
variant = " Pro";
break;
case 'C':
variant = " Max";
break;
case 'D':
variant = " Ultra";
break;
}
ffStrbufSetF(&gpu->name, "Apple M%d%s (G%d%c %02X)",
paramsGlobal.gpu_generation - 12, variant,
paramsGlobal.gpu_generation, paramsGlobal.gpu_variant,
paramsGlobal.gpu_revision + 0xA0);
}
}
}
+31 -3
View File
@@ -1,8 +1,10 @@
#include "fastfetch.h"
#include "detection/media/media.h"
#include "common/library.h"
#include "common/processing.h"
#include "util/apple/cf_helpers.h"
#include "util/apple/osascript.h"
#include "fastfetch_datatext.h"
#import <Foundation/Foundation.h>
#import <CoreFoundation/CoreFoundation.h>
@@ -13,7 +15,7 @@ extern CFStringRef MRNowPlayingClientGetBundleIdentifier(id clientObj) __attribu
extern CFStringRef MRNowPlayingClientGetParentAppBundleIdentifier(id clientObj) __attribute__((weak_import));
void MRMediaRemoteGetNowPlayingApplicationIsPlaying(dispatch_queue_t queue, void (^callback)(BOOL playing)) __attribute__((weak_import));
static const char* getMedia(FFMediaResult* result)
static const char* getMediaByMediaRemote(FFMediaResult* result)
{
#define FF_TEST_FN_EXISTANCE(fn) if (!fn) return "MediaRemote function " #fn " is not available"
FF_TEST_FN_EXISTANCE(MRMediaRemoteGetNowPlayingInfo);
@@ -79,8 +81,34 @@ static const char* getMedia(FFMediaResult* result)
return error;
}
static const char* getMediaByOsascript(FFMediaResult* result)
{
FF_STRBUF_AUTO_DESTROY buffer = ffStrbufCreate();
// The script must be executed by `/usr/bin/osascript`. `ffOsascript` doesn't work here
const char* error = ffProcessAppendStdOut(&buffer, (char* const[]) {
"/usr/bin/osascript",
"-e",
FASTFETCH_DATATEXT_NOWPLAYING,
nil
});
if (error) return error;
if (buffer.length == 0) return "No media found";
// status\ntitle\nartist\nalbum\nbundleName\nappName
FFstrbuf* const varList[] = { &result->status, &result->song, &result->artist, &result->album, &result->playerId, &result->player };
char* line = NULL;
size_t len = 0;
for (uint32_t i = 0; i < ARRAY_SIZE(varList) && ffStrbufGetline(&line, &len, &buffer); ++i)
ffStrbufSetS(varList[i], line);
return NULL;
}
void ffDetectMediaImpl(FFMediaResult* media)
{
const char* error = getMedia(media);
ffStrbufAppendS(&media->error, error);
const char* error;
if (@available(macOS 15.4, *))
error = getMediaByOsascript(media);
else
error = getMediaByMediaRemote(media);
if (error) ffStrbufAppendS(&media->error, error);
}
+1
View File
@@ -142,6 +142,7 @@ static bool getBusProperties(FFDBusData* data, const char* busName, FFMediaResul
ffStrbufClear(&result->artist);
ffStrbufClear(&result->album);
ffStrbufClear(&result->url);
ffStrbufClear(&result->status);
return false;
}
}
+9 -4
View File
@@ -19,11 +19,16 @@ static const char* getMedia(FFMediaResult* media)
}
ffStrbufSetWS(&media->playerId, result.playerId);
ffStrbufSet(&media->player, &media->playerId);
if (ffStrbufEndsWithIgnCaseS(&media->player, ".exe"))
ffStrbufSubstrBefore(&media->player, media->player.length - 4);
if (result.playerName[0])
{
ffStrbufSetWS(&media->player, result.playerName);
}
else
ffStrbufSubstrAfterFirstC(&media->player, '!'); // UWP ID
{
ffStrbufSet(&media->player, &media->playerId);
if (ffStrbufEndsWithIgnCaseS(&media->player, ".exe"))
ffStrbufSubstrBefore(&media->player, media->player.length - 4);
}
ffStrbufSetWS(&media->song, result.song);
ffStrbufSetWS(&media->artist, result.artist);
ffStrbufSetWS(&media->album, result.album);
@@ -1,5 +1,6 @@
#include <winrt/Windows.Foundation.h>
#include <winrt/Windows.Media.Control.h>
#include <winrt/Windows.ApplicationModel.h>
#include <wchar.h>
extern "C"
@@ -11,6 +12,7 @@ const char* ffWinrtDetectMedia(FFWinrtMediaResult* result)
// C++/WinRT requires Windows 8.1+ and C++ runtime (std::string, exceptions and other stuff)
// Make it a separate dll in order not to break Windows 7 support
using namespace winrt::Windows::Media::Control;
using namespace winrt::Windows::ApplicationModel;
try
{
@@ -48,6 +50,11 @@ const char* ffWinrtDetectMedia(FFWinrtMediaResult* result)
::wcsncpy(result->song, mediaProps.Title().data(), FF_MEDIA_WIN_RESULT_BUFLEN);
::wcsncpy(result->artist, mediaProps.Artist().data(), FF_MEDIA_WIN_RESULT_BUFLEN);
::wcsncpy(result->album, mediaProps.AlbumTitle().data(), FF_MEDIA_WIN_RESULT_BUFLEN);
try
{
// Only works for UWP apps
::wcsncpy(result->playerName, AppInfo::GetFromAppUserModelId(session.SourceAppUserModelId()).DisplayInfo().DisplayName().data(), FF_MEDIA_WIN_RESULT_BUFLEN);
} catch (...) { }
return NULL;
}
+1
View File
@@ -5,6 +5,7 @@
typedef struct FFWinrtMediaResult
{
wchar_t playerId[FF_MEDIA_WIN_RESULT_BUFLEN];
wchar_t playerName[FF_MEDIA_WIN_RESULT_BUFLEN];
wchar_t song[FF_MEDIA_WIN_RESULT_BUFLEN];
wchar_t artist[FF_MEDIA_WIN_RESULT_BUFLEN];
wchar_t album[FF_MEDIA_WIN_RESULT_BUFLEN];
@@ -65,6 +65,7 @@ const char* ffDetectPhysicalDisk(FFlist* result, FFPhysicalDiskOptions* options)
FFPhysicalDiskResult* device = (FFPhysicalDiskResult*) ffListAdd(result);
ffStrbufInitF(&device->devPath, "/dev/%s", provider->lg_name);
ffStrbufInitMove(&device->serial, &identifier);
ffStrbufTrim(&device->serial, ' ');
ffStrbufInit(&device->revision);
ffStrbufInit(&device->interconnect);
switch (snapIter->device_type & DEVSTAT_TYPE_IF_MASK)
@@ -153,7 +153,7 @@ static void parsePhysicalDisk(int dfd, const char* devName, FFPhysicalDiskOption
{
ffStrbufInit(&device->serial);
if (ffReadFileBufferRelative(devfd, "serial", &device->serial))
ffStrbufTrimRightSpace(&device->serial);
ffStrbufTrim(&device->serial, ' ');
}
{
+3 -1
View File
@@ -94,7 +94,9 @@ const char* ffDetectSound(FFlist* devices /* List of FFSoundDevice */)
}, 0, NULL, &dataSize, &active) == kAudioHardwareNoError)
device->active = !!active;
if (!muted)
if (muted)
device->volume = 0;
else
{
float volume;
dataSize = sizeof(volume);
@@ -69,6 +69,7 @@ static bool getShellVersionBash(FFstrbuf* exe, FFstrbuf* exePath, FFstrbuf* vers
if (*path == '\0')
path = exe->chars;
ffBinaryExtractStrings(path, extractBashVersion, version, (uint32_t) strlen("@(#)Bash version 0.0.0(0) release GNU"));
if (version->length > 0) return true;
if(!getExeVersionRaw(exe, version))
return false;
+3 -1
View File
@@ -26,7 +26,9 @@
#include "options/general.h"
#ifdef __has_builtin
#if __has_builtin(__builtin_types_compatible_p)
#if __has_builtin(__is_array)
#define ARRAY_SIZE(x) ({ static_assert(__is_array(__typeof__(x)), "Must be an array"); (uint32_t) (sizeof(x) / sizeof(*(x))); })
#elif __has_builtin(__builtin_types_compatible_p)
#define ARRAY_SIZE(x) ({ static_assert(!__builtin_types_compatible_p(__typeof__(x), __typeof__(&*(x))), "Must not be a pointer"); (uint32_t) (sizeof(x) / sizeof(*(x))); })
#endif
#endif
+4
View File
@@ -2,3 +2,7 @@
#define FASTFETCH_DATATEXT_JSON_HELP @DATATEXT_JSON_HELP@
#define FASTFETCH_DATATEXT_STRUCTURE @DATATEXT_STRUCTURE@
#ifdef __APPLE__
#define FASTFETCH_DATATEXT_NOWPLAYING @DATATEXT_NOWPLAYING@
#endif
+21 -21
View File
@@ -1,21 +1,21 @@
${c1}rrrrrraaaaaaaaaaaayyyy
${c1}xxrrrrrrrraaaaaaaaaaaayyyyyyyyy
${c1}xxxxxrrrrrrrraaaaaaaaaaaayyyyyyy${c3}yyyyy${c2}yyyyyyyyyy
${c1}xxxxxxxrrrrrrrraaaaa ${c2}aaaaayyyyyyyyyyyyyyyyyyy
${c1}xxxxxx${c3}xxx${c1}rrrrrrrraaaa ${c2}aaaaaaayyyyyyyyyyyyyyyyy
${c1}xxxxxx${c3}xxxxxr${c1}rrrrrrraa ${c2}aaaaaaaaay${c3}yyyyyyyyy${c2}yyyy ${c1}yy
${c1}xxxxxxx${c3}xxx${c1}xxrrrrrrrra ${c2}aaaaaaaaa${c3}ayyyyyyyyyyyy${c1}yyyyyy
${c1}xxxxxxxxxxxxrrrrrrrr ${c2}aaaaaaaaaaa${c3}yyyyyyyyyyyy${c1}yyyyyyy
${c1}xxxxxxxxxxxxxrrrrrr ${c2}raaaaaaaaaaaayyy${c3}yyyyyyyy${c1}yyyyyy${c1}yyy
${c1}xxxxxxxxxxxxxrrrrr ${c2}rraaaaaaaaaaaayyyyy${c3}yy${c2}yyyyyy ${c1}yyyyyy
${c1}xxxxxxxx${c3}xxxx${c1}xrrrrr${c2}rr${c3}raaaaaaa${c2}aaaaayyyyyyyyyy ${c1}yyyyyyyyy
${c1}xxxxxxx${c3}xxxx${c1}xxrrrrrrr${c3}raaaaaa${c2}aaaaaayyyyyyy ${c1}yyyyyyyyyyyy
${c1}xxxxxxx${c3}xxx${c1}xxxrrrrrrrr${c3}aaaaaa${c2}aaaaaayyyy ${c1}yyyyyyyyyyyyyy
${c1}xxxxxxxxxxxxrrrrrrrra ${c2}aaaaaaaaaay ${c1}yyyyyyyyyyyyyyyy
${c1}xxxxxxxxxxxrrrrrrr ${c2}aaaaaaaaaaaayyyy${c1}yyyyyyyyyyyyy
${c1}xxxxxxx${c3}xxxrr${c1}rrrr ${c2}raaaaaaaaaaaa ${c1}yyyyyyyyyyyyyyy
${c1}xxxxxxxxrrrr ${c2}rrraaaaaaaaa ${c1}aayyyyyyyyyyyyyy
${c1}xxxxxxrrrrrrr ${c2}aaaaaa ${c1}aaaayyyyyyyyyyyy
${c1}xxxrrrrrr ${c2}raaa ${c1}aaaaaaayyyyyyyyy
${c1}rrrr ${c2}rr ${c1}aaaaaaaaaayyyyyy
${c2}r ${c1}aaaaaaaaaa
$1rrrrrraaaaaaaaaaaayyyy
$1xxrrrrrrrraaaaaaaaaaaayyyyyyyyy
$1xxxxxrrrrrrrraaaaaaaaaaaayyyyyyy$3yyyyy$2yyyyyyyyyy
$1xxxxxxxrrrrrrrraaaaa $2aaaaayyyyyyyyyyyyyyyyyyy
$1xxxxxx$3xxx$1rrrrrrrraaaa $2aaaaaaayyyyyyyyyyyyyyyyy
$1xxxxxx$3xxxxxr$1rrrrrrraa $2aaaaaaaaay$3yyyyyyyyy$2yyyy $1yy
$1xxxxxxx$3xxx$1xxrrrrrrrra $2aaaaaaaaa$3ayyyyyyyyyyyy$1yyyyyy
$1xxxxxxxxxxxxrrrrrrrr $2aaaaaaaaaaa$3yyyyyyyyyyyy$1yyyyyyy
$1xxxxxxxxxxxxxrrrrrr $2raaaaaaaaaaaayyy$3yyyyyyyy$1yyyyyy$1yyy
$1xxxxxxxxxxxxxrrrrr $2rraaaaaaaaaaaayyyyy$3yy$2yyyyyy $1yyyyyy
$1xxxxxxxx$3xxxx$1xrrrrr$2rr$3raaaaaaa$2aaaaayyyyyyyyyy $1yyyyyyyyy
$1xxxxxxx$3xxxx$1xxrrrrrrr$3raaaaaa$2aaaaaayyyyyyy $1yyyyyyyyyyyy
$1xxxxxxx$3xxx$1xxxrrrrrrrr$3aaaaaa$2aaaaaayyyy $1yyyyyyyyyyyyyy
$1xxxxxxxxxxxxrrrrrrrra $2aaaaaaaaaay $1yyyyyyyyyyyyyyyy
$1xxxxxxxxxxxrrrrrrr $2aaaaaaaaaaaayyyy$1yyyyyyyyyyyyy
$1xxxxxxx$3xxxrr$1rrrr $2raaaaaaaaaaaa $1yyyyyyyyyyyyyyy
$1xxxxxxxxrrrr $2rrraaaaaaaaa $1aayyyyyyyyyyyyyy
$1xxxxxxrrrrrrr $2aaaaaa $1aaaayyyyyyyyyyyy
$1xxxrrrrrr $2raaa $1aaaaaaayyyyyyyyy
$1rrrr $2rr $1aaaaaaaaaayyyyyy
$2r $1aaaaaaaaaa
+11 -11
View File
@@ -1,16 +1,16 @@
${c3} ,-^-___
${c3} /\\\///
${c2}refined.${c1} /\\\\//
${c2}reliable.${c1} /\\\///
${c2}ready.${c1} /\\/////\
$3 ,-^-___
$3 /\\\///
$2refined.$1 /\\\\//
$2reliable.$1 /\\\///
$2ready.$1 /\\/////\
__///\\\\/////\
${c3} _//////\\\\\\\////
${c1} ///////${c3}\\\\\\\\\\//
//////${c1}\\\\\/
$3 _//////\\\\\\\////
$1 ///////$3\\\\\\\\\\//
//////$1\\\\\/
/////\\\\\/
/////${c3}\\\\/
/////$3\\\\/
/\\///\\\/
/\\\/${c1}\\/
/\\\/$1\\/
/\\\\//
//////
/// ${c3}\\\\\
/// $3\\\\\
+15 -15
View File
@@ -1,15 +1,15 @@
${c2}.
${c1}. ${c2}.{!
${c1}.L! ${c2}J@||*
${c1}gJJJJL` ${c2}g@FFS"
${c1},@FFFJF`${c2}_g@@LLP`
${c1}_@FFFFF`${c2}_@@@@@P` ${c4}.
${c1}J@@@LLF ${c2}_@@@@@P` ${c4}.J!
${c1}g@@@@@" ${c2}_@@@@@P`${c3}. ${c4}.L|||*
${c1}g@@@@M" ${c2}"VP`${c3}.L! ${c4}<@JJJJ`
${c1}"@N" ${c3}:||||! ${c4}JFFFFS"
${c3}.{JJ||F`${c4}_gFFFF@'
${c3}.@FJJJF`${c4},@LFFFF`
${c3}_@FFFFF ${c4}VLLLP`
${c3}J@@LL@" ${c4}`"
${c3}V@@"
$2.
$1. $2.{!
$1.L! $2J@||*
$1gJJJJL` $2g@FFS"
$1,@FFFJF`$2_g@@LLP`
$1_@FFFFF`$2_@@@@@P` $4.
$1J@@@LLF $2_@@@@@P` $4.J!
$1g@@@@@" $2_@@@@@P`$3. $4.L|||*
$1g@@@@M" $2"VP`$3.L! $4<@JJJJ`
$1"@N" $3:||||! $4JFFFFS"
$3.{JJ||F`$4_gFFFF@'
$3.@FJJJF`$4,@LFFFF`
$3_@FFFFF $4VLLLP`
$3J@@LL@" $4`"
$3V@@"
+5 -5
View File
@@ -1,6 +1,6 @@
${c1} /\ /\
/${c2}/ ${c1}\ \
/${c2}// ${c1}\ \
/${c2}// ${c1}\ \
${c2}// ${c1}\ \
$1 /\ /\
/$2/ $1\ \
/$2// $1\ \
/$2// $1\ \
$2// $1\ \
\
+4 -4
View File
@@ -1,9 +1,9 @@
___________
/ \
/ ${c2}______${c1} \
/ ${c2}/ \${c1} \
| ${c2}( )${c1} \
/ ${c2}\______/${c1} |
/ $2______$1 \
/ $2/ \$1 \
| $2( )$1 \
/ $2\______/$1 |
| |
/ \
| |
+28 -28
View File
@@ -1,28 +1,28 @@
${c2}..${c1}
${c2}..${c1}
${c2}:..${c1}
${c2}:+++.${c1}
.:::++${c2}++++${c1}+::.
.:+######${c2}++++${c1}######+:.
.+#########${c2}+++++${c1}##########:.
.+##########${c2}+++++++${c1}##${c2}+${c1}#########+.
+###########${c2}+++++++++${c1}############:
+##########${c2}++++++${c1}#${c2}++++${c1}#${c2}+${c1}###########+
+###########${c2}+++++${c1}###${c2}++++${c1}#${c2}+${c1}###########+
:##########${c2}+${c1}#${c2}++++${c1}####${c2}++++${c1}#${c2}+${c1}############:
###########${c2}+++++${c1}#####${c2}+++++${c1}#${c2}+${c1}###${c2}++${c1}######+
.##########${c2}++++++${c1}#####${c2}++++++++++++${c1}#######.
.##########${c2}+++++++++++++++++++${c1}###########.
#####${c2}++++++++++++++${c1}###${c2}++++++++${c1}#########+
:###${c2}++++++++++${c1}#########${c2}+++++++${c1}#########:
+######${c2}+++++${c1}##########${c2}++++++++${c1}#######+
+####${c2}+++++${c1}###########${c2}+++++++++${c1}#####+
:##${c2}++++++${c1}############${c2}++++++++++${c1}##:
.${c2}++++++${c1}#############${c2}++++++++++${c1}+.
:${c2}++++${c1}###############${c2}+++++++${c1}::
.${c2}++. .:+${c1}##############${c2}+++++++${c1}..
${c2}.:.${c1} ..::++++++::..:${c2}++++${c1}+.
${c2}.${c1} ${c2}.:+++${c1}.
${c2}.:${c1}:
${c2}..${c1}
${c2}..${c1}
$2..$1
$2..$1
$2:..$1
$2:+++.$1
.:::++$2++++$1+::.
.:+######$2++++$1######+:.
.+#########$2+++++$1##########:.
.+##########$2+++++++$1##$2+$1#########+.
+###########$2+++++++++$1############:
+##########$2++++++$1#$2++++$1#$2+$1###########+
+###########$2+++++$1###$2++++$1#$2+$1###########+
:##########$2+$1#$2++++$1####$2++++$1#$2+$1############:
###########$2+++++$1#####$2+++++$1#$2+$1###$2++$1######+
.##########$2++++++$1#####$2++++++++++++$1#######.
.##########$2+++++++++++++++++++$1###########.
#####$2++++++++++++++$1###$2++++++++$1#########+
:###$2++++++++++$1#########$2+++++++$1#########:
+######$2+++++$1##########$2++++++++$1#######+
+####$2+++++$1###########$2+++++++++$1#####+
:##$2++++++$1############$2++++++++++$1##:
.$2++++++$1#############$2++++++++++$1+.
:$2++++$1###############$2+++++++$1::
.$2++. .:+$1##############$2+++++++$1..
$2.:.$1 ..::++++++::..:$2++++$1+.
$2.$1 $2.:+++$1.
$2.:$1:
$2..$1
$2..$1
+12 -12
View File
@@ -1,19 +1,19 @@
${c2} `.-/::/-``
$2 `.-/::/-``
.-/osssssssso/.
:osyysssssssyyys+-
`.+yyyysssssssssyyyyy+.
`/syyyyyssssssssssyyyyys-`
`/yhyyyyysss${c1}++${c2}ssosyyyyhhy/`
.ohhhyyyys${c1}o++/+o${c2}so${c1}+${c2}syy${c1}+${c2}shhhho.
.shhhhys${c1}oo++//+${c2}sss${c1}+++${c2}yyy${c1}+s${c2}hhhhs.
-yhhhhs${c1}+++++++o${c2}ssso${c1}+++${c2}yyy${c1}s+o${c2}hhddy:
-yddhhy${c1}o+++++o${c2}syyss${c1}++++${c2}yyy${c1}yooy${c2}hdddy-
.yddddhs${c1}o++o${c2}syyyyys${c1}+++++${c2}yyhh${c1}sos${c2}hddddy`
`odddddhyosyhyyyyyy${c1}++++++${c2}yhhhyosddddddo
.dmdddddhhhhhhhyyyo${c1}+++++${c2}shhhhhohddddmmh.
ddmmdddddhhhhhhhso${c1}++++++${c2}yhhhhhhdddddmmdy
dmmmdddddddhhhyso${c1}++++++${c2}shhhhhddddddmmmmh
-dmmmdddddddhhys${c1}o++++o${c2}shhhhdddddddmmmmd-
`/yhyyyyysss$1++$2ssosyyyyhhy/`
.ohhhyyyys$1o++/+o$2so$1+$2syy$1+$2shhhho.
.shhhhys$1oo++//+$2sss$1+++$2yyy$1+s$2hhhhs.
-yhhhhs$1+++++++o$2ssso$1+++$2yyy$1s+o$2hhddy:
-yddhhy$1o+++++o$2syyss$1++++$2yyy$1yooy$2hdddy-
.yddddhs$1o++o$2syyyyys$1+++++$2yyhh$1sos$2hddddy`
`odddddhyosyhyyyyyy$1++++++$2yhhhyosddddddo
.dmdddddhhhhhhhyyyo$1+++++$2shhhhhohddddmmh.
ddmmdddddhhhhhhhso$1++++++$2yhhhhhhdddddmmdy
dmmmdddddddhhhyso$1++++++$2shhhhhddddddmmmmh
-dmmmdddddddhhys$1o++++o$2shhhhdddddddmmmmd-
.smmmmddddddddhhhhhhhhhdddddddddmmmms.
`+ydmmmdddddddddddddddddddmmmmdy/.
`.:+ooyyddddddddddddyyso+:.`
+17 -17
View File
@@ -1,17 +1,17 @@
${c2}__
${c2}gpBBBBBBBBBP
${c2}_gBBBBBBBBBRP
${c2}4BBBBBBBBRP ${c4},_____
${c2}`"" ${c4}_g@@@@@@@@@@@@@%g>
${c4}__@@@@@@@@@@@@@@@@P" ${c1}___
${c4}_g@@@@@@@@@@@@@@@N"` ${c1}_gN@@@@@N^
${c4}_w@@@@@@@@@@@@@@@@P" ${c1}_g@@@@@@@P"
${c4}_g@@@@@@@@@@@@@@@N"` ${c1}VMNN@NNNM^`
${c4}^MMM@@@@@@@@@@@MP" ${c3},ggppww__
${c4}`""""" ${c3}_wNNNNNNNNNNNNNNNNNNN
${c3}_gBNNNNNNNNNNNNNNNNNP"
${c3}_wNNNNNNNNNNNNNNNNNNMP`
${c3}_gBNNNNNNNNNNNNNNNNNP"
${c3}_wNNNNNNNNNNNNNNNNNNNM^
${c3}""Y^^MNNNNNNNNNNNNP`
${c3}`"""""""
$2__
$2gpBBBBBBBBBP
$2_gBBBBBBBBBRP
$24BBBBBBBBRP $4,_____
$2`"" $4_g@@@@@@@@@@@@@%g>
$4__@@@@@@@@@@@@@@@@P" $1___
$4_g@@@@@@@@@@@@@@@N"` $1_gN@@@@@N^
$4_w@@@@@@@@@@@@@@@@P" $1_g@@@@@@@P"
$4_g@@@@@@@@@@@@@@@N"` $1VMNN@NNNM^`
$4^MMM@@@@@@@@@@@MP" $3,ggppww__
$4`""""" $3_wNNNNNNNNNNNNNNNNNNN
$3_gBNNNNNNNNNNNNNNNNNP"
$3_wNNNNNNNNNNNNNNNNNNMP`
$3_gBNNNNNNNNNNNNNNNNNP"
$3_wNNNNNNNNNNNNNNNNNNNM^
$3""Y^^MNNNNNNNNNNNNP`
$3`"""""""
+16 -16
View File
@@ -1,18 +1,18 @@
${c2} .........
$2 .........
...................
.....................${c1}################${c2}
.............. ....${c1}################${c2}
.............. ...${c1}################${c2}
............. ..${c1}****************${c2}
............ . .${c1}****************${c2}
........... ... ${c1}................${c2}
.......... ..... ${c1}...............${c2}
.....................$1################$2
.............. ....$1################$2
.............. ...$1################$2
............. ..$1****************$2
............ . .$1****************$2
........... ... $1................$2
.......... ..... $1...............$2
......... ....... ...
.${c3}...... ${c2}.
${c3}..... .....${c2}.... ${c4}...........
${c3}.... ......${c2}. ${c4}...........
${c3}... ....... ${c4}...........
${c3}................ ${c4}***********
${c3}................ ${c4}###########
${c3}****************
${c3}################
.$3...... $2.
$3..... .....$2.... $4...........
$3.... ......$2. $4...........
$3... ....... $4...........
$3................ $4***********
$3................ $4###########
$3****************
$3################
+8 -8
View File
@@ -1,9 +1,9 @@
${c2} _____ ${c1}_____${c2}
-' '-${c1}| |${c2}
/ ___ ${c1}| |${c2}
| / _ \${c1}|_____|${c2}
$2 _____ $1_____$2
-' '-$1| |$2
/ ___ $1| |$2
| / _ \$1|_____|$2
' / /_\ \
\ / _____ \${c4}___
${c3}|${c2}/_/ ${c3}| ${c4}| |
${c3}| | ${c4}|___|
${c3}|_____|
\ / _____ \$4___
$3|$2/_/ $3| $4| |
$3| | $4|___|
$3|_____|
+10 -10
View File
@@ -2,15 +2,15 @@
_=(SDGJT=_
_GTDJHGGFCVS)
,GTDJGGDTDFBGX0
${c1} JDJDIJHRORVFSBSVL${c2}-=+=,_
${c1} IJFDUFHJNXIXCDXDSV,${c2} "DEBL
${c1} [LKDSDJTDU=OUSCSBFLD.${c2} '?ZWX,
${c1} ,LMDSDSWH' `DCBOSI${c2} DRDS],
${c1} SDDFDFH' !YEWD,${c2} )HDROD
${c1} !KMDOCG &GSU|${c2}\_GFHRGO\'
${c1} HKLSGP'${c2} __${c1}\TKM0${c2}\GHRBV)'
${c1}JSNRVW'${c2} __+MNAEC${c1}\IOI,${c2}\BN'
${c1}HELK['${c2} __,=OFFXCBGHC${c1}\FD)
${c1}?KGHE ${c2}\_-#DASDFLSV='${c1} 'EF
$1 JDJDIJHRORVFSBSVL$2-=+=,_
$1 IJFDUFHJNXIXCDXDSV,$2 "DEBL
$1 [LKDSDJTDU=OUSCSBFLD.$2 '?ZWX,
$1 ,LMDSDSWH' `DCBOSI$2 DRDS],
$1 SDDFDFH' !YEWD,$2 )HDROD
$1 !KMDOCG &GSU|$2\_GFHRGO\'
$1 HKLSGP'$2 __$1\TKM0$2\GHRBV)'
$1JSNRVW'$2 __+MNAEC$1\IOI,$2\BN'
$1HELK['$2 __,=OFFXCBGHC$1\FD)
$1?KGHE $2\_-#DASDFLSV='$1 'EF
'EHTI !H
`0F' '!
+20 -20
View File
@@ -1,20 +1,20 @@
${c1}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄${c1}⢰⡆${c1}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄
${c2}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄${c1}⢠⣿⣿⡄${c2}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄
${c3}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄${c1}⢀⣾⣿⣿⣿⡀${c3}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄
${c4}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄${c1}⣼⣿⣿⣿⣿⣷⡀${c4}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄
${c5}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄${c1}⣼⣿⣿⣿⣿⣿⣿⣷${c5}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄
${c6}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄${c1}⢼⣿⣿⣿⣿⣿⣿⣿⣿⣧${c6}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄
${c1}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄${c1}⣰⣤⣈⠻⢿⣿⣿⣿⣿⣿⣿⣧${c1}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄
${c2}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄${c1}⣰⣿⣿⣿⣿⣮⣿⣿⣿⣿⣿⣿⣿⣧${c2}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄
${c3}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄${c1}⣰⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣧${c3}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄
${c4}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄${c1}⣰⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣧${c4}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄
${c5}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄${c1}⣼⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣧${c5}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄
${c6}⠄⠄⠄⠄⠄⠄⠄⠄⠄${c1}⣼⣿⣿⣿⣿⣿⡿⣿⣿⡟${c6}⠄⠄${c1}⠸⣿⣿⡿⣿⣿⣿⣿⣿⣷⡀${c6}⠄⠄⠄⠄⠄⠄⠄⠄
${c1}⠄⠄⠄⠄⠄⠄⠄⠄${c1}⣼⣿⣿⣿⣿⣿⡏${c1}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄${c1}⠈⣿⣿⣿⣿⣿⣷⡀${c1}⠄⠄⠄⠄⠄⠄⠄
${c2}⠄⠄⠄⠄⠄⠄${c1}⢀⣼⣿⣿⣿⣿⣿⣿⡗${c2}⠄⠄⠄${c1}⢀⣠⣤⣀⠄⠄⠄${c1}⠸⣿⣿⣿⣿⣿⣿⣷⡀${c2}⠄⠄⠄⠄⠄⠄
${c3}⠄⠄⠄⠄⠄${c1}⢀⣾⣿⣿⣿⣿⣿⡏⠁${c3}⠄⠄⠄${c1}⢠⣿⣿⣿⣿⡇${c3}⠄⠄⠄⠄${c1}⢙⣿⣿⣻⠿⣿⣷⡀${c3}⠄⠄⠄⠄⠄
${c4}⠄⠄⠄⠄${c1}⢀⣾⣿⣿⣿⣿⣿⣿⣷⣤⡀${c4}⠄⠄⠄${c1}⠻⣿⣿⡿⠃${c4}⠄⠄⠄${c1}⢀⣼⣿⣿⣿⣿⣦⣌⠙⠄${c4}⠄⠄⠄⠄
${c5}⠄⠄⠄${c1}⢠⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿⠏${c5}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄${c1}⢿⣿⣿⣿⣿⣿⣿⣿⣿⣦⡀${c5}⠄⠄⠄
${c6}⠄⠄${c1}⢠⣿⣿⣿⣿⣿⣿⣿⡿⠟⠋⠁${c6}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄${c1}⠙⠻⣿⣿⣿⣿⣿⣿⣿⣿⡄${c6}⠄⠄
${c1}⠄${c1}⣠⣿⣿⣿⣿⠿⠛⠋⠁${c1}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄${c1}⠉⠙⠻⢿⣿⣿⣿⣿⣆${c1}
${c1}⡰⠟⠛⠉⠁${c2}⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄${c1}⠉⠙⠛⠿⢆
$1⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄$1⢰⡆$1⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄
$2⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄$1⢠⣿⣿⡄$2⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄
$3⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄$1⢀⣾⣿⣿⣿⡀$3⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄
$4⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄$1⣼⣿⣿⣿⣿⣷⡀$4⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄
$5⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄$1⣼⣿⣿⣿⣿⣿⣿⣷$5⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄
$6⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄$1⢼⣿⣿⣿⣿⣿⣿⣿⣿⣧$6⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄
$1⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄$1⣰⣤⣈⠻⢿⣿⣿⣿⣿⣿⣿⣧$1⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄
$2⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄$1⣰⣿⣿⣿⣿⣮⣿⣿⣿⣿⣿⣿⣿⣧$2⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄
$3⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄$1⣰⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣧$3⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄
$4⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄$1⣰⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣧$4⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄
$5⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄$1⣼⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣧$5⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄
$6⠄⠄⠄⠄⠄⠄⠄⠄⠄$1⣼⣿⣿⣿⣿⣿⡿⣿⣿⡟$6⠄⠄$1⠸⣿⣿⡿⣿⣿⣿⣿⣿⣷⡀$6⠄⠄⠄⠄⠄⠄⠄⠄
$1⠄⠄⠄⠄⠄⠄⠄⠄$1⣼⣿⣿⣿⣿⣿⡏$1⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄$1⠈⣿⣿⣿⣿⣿⣷⡀$1⠄⠄⠄⠄⠄⠄⠄
$2⠄⠄⠄⠄⠄⠄$1⢀⣼⣿⣿⣿⣿⣿⣿⡗$2⠄⠄⠄$1⢀⣠⣤⣀⠄⠄⠄$1⠸⣿⣿⣿⣿⣿⣿⣷⡀$2⠄⠄⠄⠄⠄⠄
$3⠄⠄⠄⠄⠄$1⢀⣾⣿⣿⣿⣿⣿⡏⠁$3⠄⠄⠄$1⢠⣿⣿⣿⣿⡇$3⠄⠄⠄⠄$1⢙⣿⣿⣻⠿⣿⣷⡀$3⠄⠄⠄⠄⠄
$4⠄⠄⠄⠄$1⢀⣾⣿⣿⣿⣿⣿⣿⣷⣤⡀$4⠄⠄⠄$1⠻⣿⣿⡿⠃$4⠄⠄⠄$1⢀⣼⣿⣿⣿⣿⣦⣌⠙⠄$4⠄⠄⠄⠄
$5⠄⠄⠄$1⢠⣾⣿⣿⣿⣿⣿⣿⣿⣿⣿⠏$5⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄$1⢿⣿⣿⣿⣿⣿⣿⣿⣿⣦⡀$5⠄⠄⠄
$6⠄⠄$1⢠⣿⣿⣿⣿⣿⣿⣿⡿⠟⠋⠁$6⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄$1⠙⠻⣿⣿⣿⣿⣿⣿⣿⣿⡄$6⠄⠄
$1⠄$1⣠⣿⣿⣿⣿⠿⠛⠋⠁$1⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄$1⠉⠙⠻⢿⣿⣿⣿⣿⣆$1
$1⡰⠟⠛⠉⠁$2⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄⠄$1⠉⠙⠛⠿⢆
+11 -11
View File
@@ -1,17 +1,17 @@
${c1} *
$1 *
**.
****
******
*******
** *******
**** *******
${c1}****${c2}_____${c1}***${c2}/${c1}*
***${c2}/${c1}*******${c2}//${c1}***
**${c2}/${c1}********${c2}///${c1}*${c2}/${c1}**
**${c2}/${c1}*******${c2}////${c1}***${c2}/${c1}**
**${c2}/${c1}****${c2}//////.,${c1}****${c2}/${c1}**
***${c2}/${c1}*****${c2}/////////${c1}**${c2}/${c1}***
****${c2}/${c1}**** ${c2}/////${c1}***${c2}/${c1}****
******${c2}/${c1}*** ${c2}//// ${c1}**${c2}/${c1}******
********${c2}/${c1}* ${c2}/// ${c1}*${c2}/${c1}********
,****** ${c2}// ______ / ${c1}******,
$1****$2_____$1***$2/$1*
***$2/$1*******$2//$1***
**$2/$1********$2///$1*$2/$1**
**$2/$1*******$2////$1***$2/$1**
**$2/$1****$2//////.,$1****$2/$1**
***$2/$1*****$2/////////$1**$2/$1***
****$2/$1**** $2/////$1***$2/$1****
******$2/$1*** $2//// $1**$2/$1******
********$2/$1* $2/// $1*$2/$1********
,****** $2// ______ / $1******,
+3 -3
View File
@@ -6,6 +6,6 @@
ooooo ooooo
ooooo ooooo
ooooo ooooo
ooooo ${c2}<oooooooo>${c1}
ooooo ${c2}<oooooo>${c1}
ooooo ${c2}<oooo>
ooooo $2<oooooooo>$1
ooooo $2<oooooo>$1
ooooo $2<oooo>
+15 -15
View File
@@ -1,15 +1,15 @@
${c1} `oyyy/${c2}-yyyyyy+
${c1} -syyyy/${c2}-yyyyyy+
${c1} .syyyyy/${c2}-yyyyyy+
${c1} :yyyyyy/${c2}-yyyyyy+
${c1} `/ :yyyyyy/${c2}-yyyyyy+
${c1} .+s :yyyyyy/${c2}-yyyyyy+
${c1} .oys :yyyyyy/${c2}-yyyyyy+
${c1} -oyys :yyyyyy/${c2}-yyyyyy+
${c1} :syyys :yyyyyy/${c2}-yyyyyy+
${c1} /syyyys :yyyyyy/${c2}-yyyyyy+
${c1} +yyyyyys :yyyyyy/${c2}-yyyyyy+
${c1} .oyyyyyyo. :yyyyyy/${c2}-yyyyyy+ ---------
${c1} .syyyyyy+` :yyyyyy/${c2}-yyyyy+-+syyyyyyyy
${c1} -syyyyyy/ :yyyyyy/${c2}-yyys:.syyyyyyyyyy
${c1}:syyyyyy/ :yyyyyy/${c2}-yyo.:syyyyyyyyyyy
$1 `oyyy/$2-yyyyyy+
$1 -syyyy/$2-yyyyyy+
$1 .syyyyy/$2-yyyyyy+
$1 :yyyyyy/$2-yyyyyy+
$1 `/ :yyyyyy/$2-yyyyyy+
$1 .+s :yyyyyy/$2-yyyyyy+
$1 .oys :yyyyyy/$2-yyyyyy+
$1 -oyys :yyyyyy/$2-yyyyyy+
$1 :syyys :yyyyyy/$2-yyyyyy+
$1 /syyyys :yyyyyy/$2-yyyyyy+
$1 +yyyyyys :yyyyyy/$2-yyyyyy+
$1 .oyyyyyyo. :yyyyyy/$2-yyyyyy+ ---------
$1 .syyyyyy+` :yyyyyy/$2-yyyyy+-+syyyyyyyy
$1 -syyyyyy/ :yyyyyy/$2-yyys:.syyyyyyyyyy
$1:syyyyyy/ :yyyyyy/$2-yyo.:syyyyyyyyyyy
+17 -17
View File
@@ -1,17 +1,17 @@
${c1} ***
${c1} *****
${c1} **********
${c1} ***************
${c1} *///****////****////.
${c2} (/////// /////// ///////(
${c2} /(((((//* //, //((((((.
${c2} ((((((((((( ((( ((((((((
${c2} *((((((((((((((((((((((( ((((((((
${c3} (((((#(((((((#((((( ((#(((((
${c3} (#(#(#####(#(#, ####(#(#
${c3} ######### ########
${c3} /######## ########
${c4} #######%#######
${c4} (#%%%%%%%#
${c4} %%%%%
${c4} %%%
$1 ***
$1 *****
$1 **********
$1 ***************
$1 *///****////****////.
$2 (/////// /////// ///////(
$2 /(((((//* //, //((((((.
$2 ((((((((((( ((( ((((((((
$2 *((((((((((((((((((((((( ((((((((
$3 (((((#(((((((#((((( ((#(((((
$3 (#(#(#####(#(#, ####(#(#
$3 ######### ########
$3 /######## ########
$4 #######%#######
$4 (#%%%%%%%#
$4 %%%%%
$4 %%%
+20 -20
View File
@@ -1,22 +1,22 @@
AA
AaaA
Aa${c2}/\${c1}aA
${c1} Aa${c2}/${c1}aa${c2}\${c1}aA
${c1} Aa${c2}/${c1}aAAa${c2}\${c1}aA
${c1} aA${c2}/${c1}aaAAaa${c2}\${c1}Aa
${c1} aA${c2}/${c1}aaAAAAaa${c2}\${c1}Aa
${c1} aaaaaaAAAAa${c2}/${c1}aaAAAAAAaa${c2}\${c1}aAAAAaaaaa
${c1}aAAa${c2}-----${c1}aaaaaAAAAAAAAAAaaaaa${c2}-----${c1}aAAa
${c1} aAA${c2}\ ${c1}aAAAAAAAAAAAAAAAAAAAAAAa${c2} /${c1}AAa
${c1} aAa${c2}\${c1}aAAA${c2}\${c1}AAAA${c2}\${c1}AAAA${c2}\${c1}AAA${c2}\${c1}AAa${c2}/${c1}aAa
${c1} aAa${c2}\${c1}aA${c2}\\${c1}AAA${c2}\\${c1}AAA${c2}\\${c1}AA${c2}\\/${c1}aAa
${c1} aAA${c2}\${c1}aA${c2}\\${c1}AAA${c2}\\${c1}AAA${c2}\\${c1}Aa${c2}/${c1}AAa
${c1} aA${c2}\${c1}aA${c2}\\${c1}AAA${c2}\\${c1}AAA${c2}\\/${c1}Aa
${c1} aA${c2}/${c1}AA${c2}\\\${c1}AA${c2}\\\${c1}AA${c2}\\\${c1}Aa
${c1} aA${c2}/\${c1}AAa${c2}\\\${c1}Aa${c2}\\\${c1}Aa${c2}\\\${c1}Aa
${c1} aA${c2}/\\${c1}AAa${c2}\\/\${c1}a${c2}\\\${c1}Aa${c2}\\${c1}Aa
${c1} aA${c2}/${c1}a${c2}\\\${c1}Aa${c2}\/${c1}AA${c2}\\\\\${c1}Aa${c2}\\${c1}Aa
${c1} aA${c2}/${c1}aA${c2}\\/${c1}aAa aAa${c2}\\\${c1}Aa${c2}\${c1}Aa
${c1} aA${c2}/\${c1}A${c2}\/${c1}Aa aA${c2}\\${c1}A${c2}\\${c1}Aa
${c1} A${c2}|/${c1}aaAa aAaa${c2}\|${c1}A
${c1} aAaa aaAa
Aa$2/\$1aA
$1 Aa$2/$1aa$2\$1aA
$1 Aa$2/$1aAAa$2\$1aA
$1 aA$2/$1aaAAaa$2\$1Aa
$1 aA$2/$1aaAAAAaa$2\$1Aa
$1 aaaaaaAAAAa$2/$1aaAAAAAAaa$2\$1aAAAAaaaaa
$1aAAa$2-----$1aaaaaAAAAAAAAAAaaaaa$2-----$1aAAa
$1 aAA$2\ $1aAAAAAAAAAAAAAAAAAAAAAAa$2 /$1AAa
$1 aAa$2\$1aAAA$2\$1AAAA$2\$1AAAA$2\$1AAA$2\$1AAa$2/$1aAa
$1 aAa$2\$1aA$2\\$1AAA$2\\$1AAA$2\\$1AA$2\\/$1aAa
$1 aAA$2\$1aA$2\\$1AAA$2\\$1AAA$2\\$1Aa$2/$1AAa
$1 aA$2\$1aA$2\\$1AAA$2\\$1AAA$2\\/$1Aa
$1 aA$2/$1AA$2\\\$1AA$2\\\$1AA$2\\\$1Aa
$1 aA$2/\$1AAa$2\\\$1Aa$2\\\$1Aa$2\\\$1Aa
$1 aA$2/\\$1AAa$2\\/\$1a$2\\\$1Aa$2\\$1Aa
$1 aA$2/$1a$2\\\$1Aa$2\/$1AA$2\\\\\$1Aa$2\\$1Aa
$1 aA$2/$1aA$2\\/$1aAa aAa$2\\\$1Aa$2\$1Aa
$1 aA$2/\$1A$2\/$1Aa aA$2\\$1A$2\\$1Aa
$1 A$2|/$1aaAa aAaa$2\|$1A
$1 aAaa aaAa
-24
View File
@@ -1,24 +0,0 @@
${c1} . ..
${c1} :####: ####.
${c1} .################
${c1} :##################
${c1}.###################.
${c1}######## #######
${c1}####### ${c2}####${c1} #####
${c1}:#######. ####
${c1} ######### ${c2}#${c1} ## #
${c1} ####### ${c2}##${c1} ####
${c1}######## ${c2}####${c1} #######
${c1}######## ${c2}#####${c1} ########
${c1}######## ${c2}#######${c1} #######
${c1} ####### ${c2}########${c1} #######
${c1} ######## ${c2}#########${c1} ######
${c1} ######## ${c2}#########${c1} #####
${c1} ####### ${c2}#########${c1} ####
${c1} ####### ${c2}#########${c1} ##
${c1} ####### ${c2}########${c1} ##
${c1} ###### ${c2}########${c1} #
${c1} ### ${c2}#######${c1}
${c1} ${c2}######${c1}
${c1} ${c2}####${c1}
${c1} ${c2}##${c1}
+29
View File
@@ -0,0 +1,29 @@
u.
..:Y
.Y..1
..::i::.. .br7S.
.::::...::::. 5dDr:
..:::.. .:i::.. Y7:
..:::::.. ..::::.
...:i:i:i:.. $2... $1:.:..:i:::...
::i:. $2.USL Yr $1..i::.
.:::. $2:K :u. $1.::.
:... $2jB. .:vUi: 77 KB: $1..::
...: $2iBR vP::5X5PgSKXvLjS. iBB $1.::.
:i:: $2BBQr jgDIuj1UuJjXbbi 2BBP $1:::;
'i:: $2sQBg: i2S55121XSSU. YBQZ: $1.:::
r::: $2r:JgBMu. Q :BqEqZEB: Q :qBBK7i: $1:i:i
.rir. $2IBqPDgQBDr P rB :q 1QBRgEqgB $1.::i.
:i:i $2:JsXPDDRQQPBL P qQXBQRDDPIYY $1rir:
:iii $25qvLUDDMgMgBB5 :DBQZRgMDdJ7Ygi $1iir:
iri: $2MBRgdZZggQgRBMIBQQRRggdZdMBBr $1riri
irii $2IBQgdZbDDRRRgQgQQMZDdZdgBB. $1iiri
i7rr $2.BBQZZbEEMQQDBQMEZdDDBBP $1.rir:
:7ir. $27BBQMDMQSbB5ZBggQBBQ. $1ivr7.
:r7r. $27BBBB:rBbQ.1BBBM. $1:r7vi
::rLrr. $2.b:rBQ7QB uU. $1:7vLi.
.BB .iLYv: $1idL B1 $1:r77r.
LBB :vrvvr rvu7r:
ZB. ':7v177Lsvurr:'
.d2 ''::r:''
:'
+24
View File
@@ -0,0 +1,24 @@
. ..
$1 :####: ####.
$1 .################
$1 :##################
$1.###################.
$1######## #######
$1####### $2####$1 #####
$1:#######. ####
$1 ######### $2#$1 ## #
$1 ####### $2##$1 ####
$1######## $2####$1 #######
$1######## $2#####$1 ########
$1######## $2#######$1 #######
$1 ####### $2########$1 #######
$1 ######## $2#########$1 ######
$1 ######## $2#########$1 #####
$1 ####### $2#########$1 ####
$1 ####### $2#########$1 ##
$1 ####### $2########$1 ##
$1 ###### $2########$1 #
$1 ### $2#######$1
$1 $2######$1
$1 $2####$1
$1 $2##$1
+17 -17
View File
@@ -1,17 +1,17 @@
${c1} ////. ${c2} (((((
${c1}//////// ${c2} @((((((((
${c1}//////// ${c2} @((((((((
${c1}//////// /////// ${c2} ((((((( @((((((((
${c1}//////// ///////// ${c2} ((((((((( @((((((((
${c1}//////// ///////// ${c2} ((((((((( @((((((((
${c1}//////// ///////// ////// ${c2} (((((( ((((((((( @((((((((
${c1}//////// ///////// //////// ${c2} (((((((( ((((((((( @((((((((
${c1}//////// ///////// //////// ${c2} (((((((( ((((((((( @((((((((
${c1}//////// ///////// //////// ${c2} ((((((( ((((((((( @((((((((
${c1}//////// ///////// /// ${c2} ( ((((((((( @((((((((
${c1}//////// ///////// ${c2} ((((((((( @((((((((
${c1}//////// ///////// ${c2} &(((((((( @((((((((
${c1}//////// ////// ${c2} @(((( @((((((((
${c1}//////// ${c2} @((((((((
${c1}//////// ${c2} @((((((((
${c1} ///// ${c2} (((((
$1 ////. $2 (((((
$1//////// $2 @((((((((
$1//////// $2 @((((((((
$1//////// /////// $2 ((((((( @((((((((
$1//////// ///////// $2 ((((((((( @((((((((
$1//////// ///////// $2 ((((((((( @((((((((
$1//////// ///////// ////// $2 (((((( ((((((((( @((((((((
$1//////// ///////// //////// $2 (((((((( ((((((((( @((((((((
$1//////// ///////// //////// $2 (((((((( ((((((((( @((((((((
$1//////// ///////// //////// $2 ((((((( ((((((((( @((((((((
$1//////// ///////// /// $2 ( ((((((((( @((((((((
$1//////// ///////// $2 ((((((((( @((((((((
$1//////// ///////// $2 &(((((((( @((((((((
$1//////// ////// $2 @(((( @((((((((
$1//////// $2 @((((((((
$1//////// $2 @((((((((
$1 ///// $2 (((((
+2 -2
View File
@@ -5,14 +5,14 @@
: xMMMMMW. kMMMMNc lW.
:x NMMMMMO ,MMMM0. 'l
Xx "lkk" kMMMX .okx,
${c2}.MX .cc;. .xXKx. KMMM: .OMMMMMl
$2.MX .cc;. .xXKx. KMMM: .OMMMMMl
:MM' 'KMMMMWK: 0MMMMk xMMM. lWMMMMMMM'
cMMN:;xMMMMk::MMO oMMMMX .XMM. .KMMMWOOMMMd
'MMMMMMMMN, NMMx OMMMMl .kM0OMMMMk. ;MMd
xMMMMMMd .MMMW :NMMMd .ckKKx' KMc
dWMNd. oMMMN lkNMX, oM.
;. ;MMMMx "MM:. cO
${c3} .X. oMMMMW. l.
$3 .X. oMMMMW. l.
dMk:..;xWMMMMW,
kMMMMMMMMMMX.
:XMMMMMMK:
+20 -20
View File
@@ -1,21 +1,21 @@
${c3} 00
$3 00
11
====${c1}
.${c3}//${c1}
`o${c3}//${c1}:
`+o${c3}//${c1}o:
`+oo${c3}//${c1}oo:
-+oo${c3}//${c1}oo+:
`/:-:+${c3}//${c1}ooo+:
`/+++++${c3}//${c1}+++++:
`/++++++${c3}//${c1}++++++:
`/+++o${c2}ooo${c3}//${c2}ooo${c1}oooo/`
${c2} ${c1}./${c2}ooosssso${c3}//${c2}osssssso${c1}+`
${c2} .oossssso-`${c3}//${c1}`/ossssss+`
-osssssso. ${c3}//${c1} :ssssssso.
:osssssss/ ${c3}//${c1} osssso+++.
/ossssssss/ ${c3}//${c1} +ssssooo/-
`/ossssso+/:- ${c3}//${c1} -:/+osssso+-
`+sso+:-` ${c3}//${c1} `.-/+oso:
`++:. ${c3}//${c1} `-/+/
.` ${c3}/${c1} `/
====$1
.$3//$1
`o$3//$1:
`+o$3//$1o:
`+oo$3//$1oo:
-+oo$3//$1oo+:
`/:-:+$3//$1ooo+:
`/+++++$3//$1+++++:
`/++++++$3//$1++++++:
`/+++o$2ooo$3//$2ooo$1oooo/`
$2 $1./$2ooosssso$3//$2osssssso$1+`
$2 .oossssso-`$3//$1`/ossssss+`
-osssssso. $3//$1 :ssssssso.
:osssssss/ $3//$1 osssso+++.
/ossssssss/ $3//$1 +ssssooo/-
`/ossssso+/:- $3//$1 -:/+osssso+-
`+sso+:-` $3//$1 `.-/+oso:
`++:. $3//$1 `-/+/
.` $3/$1 `/
+2 -2
View File
@@ -1,7 +1,7 @@
${c3} ........
$3 ........
.,»╔╗╗╬▄▄╫█▀▓▄▄╬╗╗g≈,.
,j╗╬╣▓▓███████▌;»╙▀▀▀▀█▄▄╗j,
.≈╗╬▓██▀▀▀▀▀╠╙░░»»;:`${c2}``>${c1}▄ ${c3}▐ ▓╫╗⌂,
.≈╗╬▓██▀▀▀▀▀╠╙░░»»;:`$2``>$1▄ $3▐ ▓╫╗⌂,
.j╬▓█▀▒░░░░░░░░░»»»;:```` ╙▀█▌╬░,
;╗▓█▄▄███████▀░░»»»»;```` ╓▄▄█▄▄φ ██▌Ñ>.
.j╣█████▀▀░░░░░░░░»»╓▄▄¿``▄███████/▄████▓╬U.
+17 -17
View File
@@ -1,17 +1,17 @@
${c2} `./ohdNMMMMNmho+.` ${c1} .+oo:`
${c2} -smMMMMMMMMMMMMMMMMmy-` ${c1}`yyyyy+
${c2} `:dMMMMMMMMMMMMMMMMMMMMMMd/` ${c1}`yyyyys
${c2} .hMMMMMMMNmhso/++symNMMMMMMMh- ${c1}`yyyyys
${c2} -mMMMMMMms-` -omMMMMMMN-${c1}.yyyyys
${c2}.mMMMMMMy. .yMMMMMMm:${c1}yyyyys
${c2}sMMMMMMy `sMMMMMMh${c1}yyyyys
${c2}NMMMMMN: .NMMMMMN${c1}yyyyys
${c2}MMMMMMm. NMMMMMN${c1}yyyyys
${c2}hMMMMMM+ /MMMMMMN${c1}yyyyys
${c2}:NMMMMMN: :mMMMMMM+${c1}yyyyys
${c2} oMMMMMMNs- .sNMMMMMMs.${c1}yyyyys
${c2} +MMMMMMMNho:.` `.:ohNMMMMMMNo ${c1}`yyyyys
${c2} -hMMMMMMMMNNNmmNNNMMMMMMMMh- ${c1}`yyyyys
${c2} :yNMMMMMMMMMMMMMMMMMMNy:` ${c1}`yyyyys
${c2} .:sdNMMMMMMMMMMNds/. ${c1}`yyyyyo
${c2} `.:/++++/:.` ${c1}:oys+.
$2 `./ohdNMMMMNmho+.` $1 .+oo:`
$2 -smMMMMMMMMMMMMMMMMmy-` $1`yyyyy+
$2 `:dMMMMMMMMMMMMMMMMMMMMMMd/` $1`yyyyys
$2 .hMMMMMMMNmhso/++symNMMMMMMMh- $1`yyyyys
$2 -mMMMMMMms-` -omMMMMMMN-$1.yyyyys
$2.mMMMMMMy. .yMMMMMMm:$1yyyyys
$2sMMMMMMy `sMMMMMMh$1yyyyys
$2NMMMMMN: .NMMMMMN$1yyyyys
$2MMMMMMm. NMMMMMN$1yyyyys
$2hMMMMMM+ /MMMMMMN$1yyyyys
$2:NMMMMMN: :mMMMMMM+$1yyyyys
$2 oMMMMMMNs- .sNMMMMMMs.$1yyyyys
$2 +MMMMMMMNho:.` `.:ohNMMMMMMNo $1`yyyyys
$2 -hMMMMMMMMNNNmmNNNMMMMMMMMh- $1`yyyyys
$2 :yNMMMMMMMMMMMMMMMMMMNy:` $1`yyyyys
$2 .:sdNMMMMMMMMMMNds/. $1`yyyyyo
$2 `.:/++++/:.` $1:oys+.
+15 -15
View File
@@ -2,18 +2,18 @@
oMMMMMMMMMMMMMMMMMMMMMMMMM
oMMMMMMMMMMMMMMMMMMMMMMMMM
oMMMMMMMMMMMMMMMMMMMMMMMMM
-+++++++++++++++++++++++mM${c2}
```````````````````````..${c1}dM${c2}
```````````````````````....${c1}dM${c2}
```````````````````````......${c1}dM${c2}
```````````````````````........${c1}dM${c2}
```````````````````````..........${c1}dM${c2}
```````````````````````............${c1}dM${c2}
.::::::::::::::::::::::-..............${c1}dM${c2}
`-+yyyyyyyyyyyyyyyyyyyo............${c1}+mMM${c2}
-+yyyyyyyyyyyyyyyyo..........${c1}+mMMMM${c2}
./syyyyyyyyyyyyo........${c1}+mMMMMMM${c2}
./oyyyyyyyyyo......${c1}+mMMMMMMMM${c2}
omdyyyyyyo....${c1}+mMMMMMMMMMM${c2}
${c1}oMMM${c2}mdhyyo..${c1}+mMMMMMMMMMMMM
oNNNNNNm${c2}dso${c1}mMMMMMMMMMMMMMM
-+++++++++++++++++++++++mM$2
```````````````````````..$1dM$2
```````````````````````....$1dM$2
```````````````````````......$1dM$2
```````````````````````........$1dM$2
```````````````````````..........$1dM$2
```````````````````````............$1dM$2
.::::::::::::::::::::::-..............$1dM$2
`-+yyyyyyyyyyyyyyyyyyyo............$1+mMM$2
-+yyyyyyyyyyyyyyyyo..........$1+mMMMM$2
./syyyyyyyyyyyyo........$1+mMMMMMM$2
./oyyyyyyyyyo......$1+mMMMMMMMM$2
omdyyyyyyo....$1+mMMMMMMMMMM$2
$1oMMM$2mdhyyo..$1+mMMMMMMMMMMMM
oNNNNNNm$2dso$1mMMMMMMMMMMMMMM
+18 -18
View File
@@ -1,18 +1,18 @@
${c1}| ${c2},,mmKKKKKKKKWm,,
${c1}' ${c2},aKKP${c1}LL**********|L*${c2}TKp,
${c1}t ${c2}aKP${c1}L**``` ```**L${c2}*Kp
IX${c1}EL${c3}L,wwww, ${c1}``*||${c2}Kp
,#P${c1}L|${c3}KKKpPP@IPPTKmw, ${c1}`*||${c2}K
,K${c1}LL*${c3}{KKKKKKPPb$KPhpKKPKp ${c1}`||${c2}K
#${c1}PL ${c3}!KKKKKKPhKPPP$KKEhKKKKp ${c1}`||${c2}K
!H${c1}L* ${c3}1KKKKKKKphKbPKKKKKK$KKp ${c1}`|I${c2}W
$$$${c1}bL ${c3}KKKKKKKKBQKhKbKKKKKKKK ${c1}|I${c2}N
$$$${c1}bL ${c3}!KKKKKKKKKKNKKKKKKKPP` ${c1}|I${c2}b
TH${c1}L* ${c3}TKKKKKK##KKKN@KKKK^ ${c1}|I${c2}M
K@${c1}L ${c3}*KKKKKKKKKKKEKE5 ${c1}||${c2}K
`NL${c1}L ${c3}`KKKKKKKKKK"```|L ${c1}||${c2}#P
`K@${c1}LL ${c3}`"**"` ${c1}'. :||${c2}#P
Yp${c1}LL ${c1}' |L${c2}$M`
`Tp${c1}pLL, ,|||${c2}p'L
"Kpp${c1}LL++,., ,,|||$$$${c2}#K* ${c1}'.
${c2}`"MKWpppppppp#KM"` ${c1}`h,
$1| $2,,mmKKKKKKKKWm,,
$1' $2,aKKP$1LL**********|L*$2TKp,
$1t $2aKP$1L**``` ```**L$2*Kp
IX$1EL$3L,wwww, $1``*||$2Kp
,#P$1L|$3KKKpPP@IPPTKmw, $1`*||$2K
,K$1LL*$3{KKKKKKPPb$KPhpKKPKp $1`||$2K
#$1PL $3!KKKKKKPhKPPP$KKEhKKKKp $1`||$2K
!H$1L* $31KKKKKKKphKbPKKKKKK$KKp $1`|I$2W
$$$$1bL $3KKKKKKKKBQKhKbKKKKKKKK $1|I$2N
$$$$1bL $3!KKKKKKKKKKNKKKKKKKPP` $1|I$2b
TH$1L* $3TKKKKKK##KKKN@KKKK^ $1|I$2M
K@$1L $3*KKKKKKKKKKKEKE5 $1||$2K
`NL$1L $3`KKKKKKKKKK"```|L $1||$2#P
`K@$1LL $3`"**"` $1'. :||$2#P
Yp$1LL $1' |L$2$M`
`Tp$1pLL, ,|||$2p'L
"Kpp$1LL++,., ,,|||$$$$2#K* $1'.
$2`"MKWpppppppp#KM"` $1`h,
+12 -12
View File
@@ -1,15 +1,15 @@
${c2} ,####,
${c2}#######, ${c2},#####,
${c2}#####',# ${c2}'######
${c2}''###'${c3}';,,,'${c2}###'
${c3} ,; ''''
${c3} ;;; ${c2},#####,
${c3} ;;;' ,,;${c2};;###
${c3} ';;;;''${c2}'####'
${c3} ;;;
${c3} ,.;;';'',,,
${c3} ' '
${c1} #
$2 ,####,
$2#######, $2,#####,
$2#####',# $2'######
$2''###'$3';,,,'$2###'
$3 ,; ''''
$3 ;;; $2,#####,
$3 ;;;' ,,;$2;;###
$3 ';;;;''$2'####'
$3 ;;;
$3 ,.;;';'',,,
$3 ' '
$1 #
# O
##, ,##,',##, ,## ,#, ,
# # # # #''# #,, # # #
+5 -5
View File
@@ -1,7 +1,7 @@
......
,,+++++++,.
.,,,....,,,${c2}+**+,,.${c1}
............,${c2}++++,,,${c1}
.,,,....,,,$2+**+,,.$1
............,$2++++,,,$1
...............
......,,,........
.....+*#####+,,,*+.
@@ -15,6 +15,6 @@
..... ..+##***#################*.
.,.*#*****##############*.
..,,*********#####****+.
${c2}.,++*****+++${c1}*****************${c2}+++++,.${c1}
${c2},++++++**+++++${c1}***********${c2}+++++++++,${c1}
${c2}.,,,,++++,.. .,,,,,.....,+++,.,,${c1}
$2.,++*****+++$1*****************$2+++++,.$1
$2,++++++**+++++$1***********$2+++++++++,$1
$2.,,,,++++,.. .,,,,,.....,+++,.,,$1
+13 -13
View File
@@ -1,18 +1,18 @@
.-/-.
////////.
////////${c2}y+${c1}//.
////////${c2}mMN${c1}/////.
////////${c2}mMN+${c1}////////.
////////$2y+$1//.
////////$2mMN$1/////.
////////$2mMN+$1////////.
////////////////////////.
/////////+${c2}shhddhyo${c1}+////////.
////////${c2}ymMNmdhhdmNNdo${c1}///////.
///////+${c2}mMms${c1}////////${c2}hNMh${c1}///////.
///////${c2}NMm+${c1}//////////${c2}sMMh${c1}///////
//////${c2}oMMNmmmmmmmmmmmmMMm${c1}///////
//////${c2}+MMmssssssssssssss+${c1}///////
`//////${c2}yMMy${c1}////////////////////
`//////${c2}smMNhso++oydNm${c1}////////
`///////${c2}ohmNMMMNNdy+${c1}///////
`//////////${c2}++${c1}//////////
/////////+$2shhddhyo$1+////////.
////////$2ymMNmdhhdmNNdo$1///////.
///////+$2mMms$1////////$2hNMh$1///////.
///////$2NMm+$1//////////$2sMMh$1///////
//////$2oMMNmmmmmmmmmmmmMMm$1///////
//////$2+MMmssssssssssssss+$1///////
`//////$2yMMy$1////////////////////
`//////$2smMNhso++oydNm$1////////
`///////$2ohmNMMMNNdy+$1///////
`//////////$2++$1//////////
`////////////////.
-////////-
+17 -17
View File
@@ -1,18 +1,18 @@
${c3}ddddddddddddddc ${c1},cc:
${c3}ddddddddddddddc ${c1},cc:
${c3}ddddddddddddddd ${c1},cc:
${c3}ddddddddddddl:' ${c1},cc:
${c3}dddddddddl' ${c1}..;cc:
${c3}dddddddo. ${c1},:cccccc:
${c3}ddddddl ${c1},ccc:'''''
${c3}dddddo. ${c1};ccc. ............
$3ddddddddddddddc $1,cc:
$3ddddddddddddddc $1,cc:
$3ddddddddddddddd $1,cc:
$3ddddddddddddl:' $1,cc:
$3dddddddddl' $1..;cc:
$3dddddddo. $1,:cccccc:
$3ddddddl $1,ccc:'''''
$3dddddo. $1;ccc. ............
.ccc. cccccccccccc
${c2}...... ${c1}.ccc. .ccc'''''''''
${c2}OOOOOk. ${c1};ccc. .ccc; ......
${c2}OOOOOOd ${c1}'ccc:,....,:ccc' ${c4}coooooo
${c2}OOOOOOOx. ${c1}':cccccccc:' ${c4}.looooooo
${c2}OOOOOOOOOd, ${c1}`'''` ${c4}.coooooooo
${c2}OOOOOOOOOOOOdc,. ${c4}..,coooooooooooo
${c2}OOOOOOOOOOOOOOOO' ${c4}.oooooooooooooooo
${c2}OOOOOOOOOOOOOOOO' ${c4}.oooooooooooooooo
${c2}OOOOOOOOOOOOOOOO' ${c4}.oooooooooooooooo
$2...... $1.ccc. .ccc'''''''''
$2OOOOOk. $1;ccc. .ccc; ......
$2OOOOOOd $1'ccc:,....,:ccc' $4coooooo
$2OOOOOOOx. $1':cccccccc:' $4.looooooo
$2OOOOOOOOOd, $1`'''` $4.coooooooo
$2OOOOOOOOOOOOdc,. $4..,coooooooooooo
$2OOOOOOOOOOOOOOOO' $4.oooooooooooooooo
$2OOOOOOOOOOOOOOOO' $4.oooooooooooooooo
$2OOOOOOOOOOOOOOOO' $4.oooooooooooooooo
+15 -15
View File
@@ -1,18 +1,18 @@
${c2} .,:loool:,.
$2 .,:loool:,.
.,coooooooooooooc,.
.,lllllllllllllllllllll,.
;ccccccccccccccccccccccccc;
${c1} '${c2}ccccccccccccccccccccccccccccc.
${c1} ,oo${c2}c::::::::okO${c5}000${c3}0OOkkkkkkkkkkk:
${c1}.ooool${c2};;;;:x${c5}K0${c4}kxxxxxk${c5}0X${c3}K0000000000.
${c1}:oooool${c2};,;O${c5}K${c4}ddddddddddd${c5}KX${c3}000000000d
${c1}lllllool${c2};l${c5}N${c4}dllllllllllld${c5}N${c3}K000000000
${c1}lllllllll${c2}o${c5}M${c4}dccccccccccco${c5}W${c3}K000000000
${c1};cllllllllX${c5}X${c4}c:::::::::c${c5}0X${c3}000000000d
${c1}.ccccllllllO${c5}Nk${c4}c;,,,;cx${c5}KK${c3}0000000000.
${c1} .cccccclllllxOO${c5}OOO${c1}Okx${c3}O0000000000;
${c1} .:ccccccccllllllllo${c3}O0000000OOO,
${c1} ,:ccccccccclllcd${c3}0000OOOOOOl.
${c1} '::ccccccccc${c3}dOOOOOOOkx:.
${c1} ..,::cccc${c3}xOOOkkko;.
${c1} ..,:${c3}dOkxl:.
$1 '$2ccccccccccccccccccccccccccccc.
$1 ,oo$2c::::::::okO$5000$30OOkkkkkkkkkkk:
$1.ooool$2;;;;:x$5K0$4kxxxxxk$50X$3K0000000000.
$1:oooool$2;,;O$5K$4ddddddddddd$5KX$3000000000d
$1lllllool$2;l$5N$4dllllllllllld$5N$3K000000000
$1lllllllll$2o$5M$4dccccccccccco$5W$3K000000000
$1;cllllllllX$5X$4c:::::::::c$50X$3000000000d
$1.ccccllllllO$5Nk$4c;,,,;cx$5KK$30000000000.
$1 .cccccclllllxOO$5OOO$1Okx$3O0000000000;
$1 .:ccccccccllllllllo$3O0000000OOO,
$1 ,:ccccccccclllcd$30000OOOOOOl.
$1 '::ccccccccc$3dOOOOOOOkx:.
$1 ..,::cccc$3xOOOkkko;.
$1 ..,:$3dOkxl:.
+12 -12
View File
@@ -3,18 +3,18 @@
BBBBBBBBBBBBBBB
BBBBBBBBBBBBBBBBBBBB
BBBBBBBBBBB BBB
BBBBBBBB${c2}YYYYY
${c1} BBBBBBBB${c2}YYYYYY
${c1} BBBBBBBB${c2}YYYYYYY
${c1} BBBBBBBBB${c2}YYYYY${c3}W
${c4} GG${c1}BBBBBBBY${c2}YYYY${c3}WWW
${c4} GGG${c1}BBBBBBB${c2}YY${c3}WWWWWWWW
${c4} GGGGGG${c1}BBBBBB${c3}WWWWWWWW
${c4} GGGGGGGG${c1}BBBB${c3}WWWWWWWW
${c4}GGGGGGGGGGG${c1}BBB${c3}WWWWWWW
${c4}GGGGGGGGGGGGG${c1}B${c3}WWWWWW
${c4}GGGGGGGG${c3}WWWWWWWWWWW
${c4}GG${c3}WWWWWWWWWWWWWWWW
BBBBBBBB$2YYYYY
$1 BBBBBBBB$2YYYYYY
$1 BBBBBBBB$2YYYYYYY
$1 BBBBBBBBB$2YYYYY$3W
$4 GG$1BBBBBBBY$2YYYY$3WWW
$4 GGG$1BBBBBBB$2YY$3WWWWWWWW
$4 GGGGGG$1BBBBBB$3WWWWWWWW
$4 GGGGGGGG$1BBBB$3WWWWWWWW
$4GGGGGGGGGGG$1BBB$3WWWWWWW
$4GGGGGGGGGGGGG$1B$3WWWWWW
$4GGGGGGGG$3WWWWWWWWWWW
$4GG$3WWWWWWWWWWWWWWWW
WWWWWWWWWWWWWWWW
WWWWWWWWWW
WWW
+2 -2
View File
@@ -7,8 +7,8 @@
`oNMMMNo` `sNMMMMMMNs` `oNMMMNo`
`oNMMMMMMMNo` `oNMMNs` `oNMMMMMMMNo`
oNMMMMMMMMMMMNo` `sy` `oNMMMMMMMMMMMNo
`sNMMMMMMMMMMMMNo.${c2}oNNs${c1}.oNMMMMMMMMMMMMNs`
`oNMMMMMMMMMMMMNs.${c2}oNNs${c1}.oNMMMMMMMMMMMMNo`
`sNMMMMMMMMMMMMNo.$2oNNs$1.oNMMMMMMMMMMMMNs`
`oNMMMMMMMMMMMMNs.$2oNNs$1.oNMMMMMMMMMMMMNo`
oNMMMMMMMMMMMNs` `sy` `oNMMMMMMMMMMMNo
`oNMMMMMMMNs` `oNMMNo` `oNMMMMMMMNs`
`oNMMMNs` `sNMMMMMMNs` `oNMMMNs`
+14 -14
View File
@@ -1,16 +1,16 @@
${c1} ///
${c1} ,//////////////
${c1} ///////////////////////////////
${c1} ///////////////${c5}***********${c1}//////
////${c5}***********************${c1}/////
/////${c5}***********************${c1}////
//////${c5},,,,,,,,,,,,,,,,,,,,,,${c1}///
//////${c5},,,,,,,,,,,,,,,,,,,,,,,,,${c1}/////
/////${c5},,,,,,,,,,,,,,,,,,,,,,,,,,,,${c1}/////
${c4} *****${c3},,,,,,,,,,,,,,,,,,,,,,,,,,,,,${c4}*****
******${c3},,,,,,,,,,,,,,,,,,,,,,,,,,,,${c4}*****
*******${c3},,,,,,,,,,,,,,,,,,,,,,,,,${c4}******
*******${c3}......................${c4}*******
******${c3}....${c4}***********************
$1 ///
$1 ,//////////////
$1 ///////////////////////////////
$1 ///////////////$5***********$1//////
////$5***********************$1/////
/////$5***********************$1////
//////$5,,,,,,,,,,,,,,,,,,,,,,$1///
//////$5,,,,,,,,,,,,,,,,,,,,,,,,,$1/////
/////$5,,,,,,,,,,,,,,,,,,,,,,,,,,,,$1/////
$4 *****$3,,,,,,,,,,,,,,,,,,,,,,,,,,,,,$4*****
******$3,,,,,,,,,,,,,,,,,,,,,,,,,,,,$4*****
*******$3,,,,,,,,,,,,,,,,,,,,,,,,,$4******
*******$3......................$4*******
******$3....$4***********************
****************************
*****
+17 -17
View File
@@ -1,17 +1,17 @@
${c1}syyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy+${c3}.+.
${c1}`oyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy+${c3}:++.
${c2}/o${c1}+oyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy/${c3}oo++.
${c2}/y+${c1}syyyyyyyyyyyyyyyyyyyyyyyyyyyyy${c3}+ooo++.
${c2}/hy+${c1}oyyyhhhhhhhhhhhhhhyyyyyyyyy${c3}+oo+++++.
${c2}/hhh+${c1}shhhhhdddddhhhhhhhyyyyyyy${c3}+oo++++++.
${c2}/hhdd+${c1}oddddddddddddhhhhhyyyys${c3}+oo+++++++.
${c2}/hhddd+${c1}odmmmdddddddhhhhyyyy${c3}+ooo++++++++.
${c2}/hhdddmo${c1}odmmmdddddhhhhhyyy${c3}+oooo++++++++.
${c2}/hdddmmms${c1}/dmdddddhhhhyyys${c3}+oooo+++++++++.
${c2}/hddddmmmy${c1}/hdddhhhhyyyyo${c3}+oooo++++++++++:
${c2}/hhdddmmmmy${c1}:yhhhhyyyyy+${c3}+oooo+++++++++++:
${c2}/hhddddddddy${c1}-syyyyyys+${c3}ooooo++++++++++++:
${c2}/hhhddddddddy${c1}-+yyyy+${c3}/ooooo+++++++++++++:
${c2}/hhhhhdddddhhy${c1}./yo:${c3}+oooooo+++++++++++++/
${c2}/hhhhhhhhhhhhhy${c1}:-.${c3}+sooooo+++++++++++///:
${c2}:sssssssssssso++${c1}${c3}`:/:--------.````````
$1syyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy+$3.+.
$1`oyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy+$3:++.
$2/o$1+oyyyyyyyyyyyyyyyyyyyyyyyyyyyyyy/$3oo++.
$2/y+$1syyyyyyyyyyyyyyyyyyyyyyyyyyyyy$3+ooo++.
$2/hy+$1oyyyhhhhhhhhhhhhhhyyyyyyyyy$3+oo+++++.
$2/hhh+$1shhhhhdddddhhhhhhhyyyyyyy$3+oo++++++.
$2/hhdd+$1oddddddddddddhhhhhyyyys$3+oo+++++++.
$2/hhddd+$1odmmmdddddddhhhhyyyy$3+ooo++++++++.
$2/hhdddmo$1odmmmdddddhhhhhyyy$3+oooo++++++++.
$2/hdddmmms$1/dmdddddhhhhyyys$3+oooo+++++++++.
$2/hddddmmmy$1/hdddhhhhyyyyo$3+oooo++++++++++:
$2/hhdddmmmmy$1:yhhhhyyyyy+$3+oooo+++++++++++:
$2/hhddddddddy$1-syyyyyys+$3ooooo++++++++++++:
$2/hhhddddddddy$1-+yyyy+$3/ooooo+++++++++++++:
$2/hhhhhdddddhhy$1./yo:$3+oooooo+++++++++++++/
$2/hhhhhhhhhhhhhy$1:-.$3+sooooo+++++++++++///:
$2:sssssssssssso++$1$3`:/:--------.````````
+6 -6
View File
@@ -1,7 +1,7 @@
___
(${c3}.· ${c1}|
(${c2}<> ${c1}|
/ ${c3}__ ${c1}\
( ${c3}/ \ ${c1}/|
${c2}_${c1}/\ ${c3}__)${c1}/${c2}_${c1})
${c2}\/${c1}-____${c2}\/
($3.· $1|
($2<> $1|
/ $3__ $1\
( $3/ \ $1/|
$2_$1/\ $3__)$1/$2_$1)
$2\/$1-____$2\/
+18 -18
View File
@@ -1,20 +1,20 @@
`.-://++++++//:-.`
`:/+//${c2}::--------${c1}:://+/:`
-++/:${c2}----..........----${c1}:/++-
.++:${c2}---...........-......---${c1}:++.
/+:${c2}---....-::/:/--//:::-....---${c1}:+/
`++:${c2}--.....:---::/--/::---:.....--${c1}:++`
/+:${c2}--.....--.--::::-/::--.--.....--${c1}:+/
-o:${c2}--.......-:::://--/:::::-.......--${c1}:o-
/+:${c2}--...-:-::---:::..:::---:--:-...--${c1}:+/
o/:${c2}-...-:.:.-/:::......::/:.--.:-...-${c1}:/o
o/${c2}--...::-:/::/:-......-::::::-/-...-${c1}:/o
/+:${c2}--..-/:/:::--:::..:::--::////-..--${c1}:+/
-o:${c2}--...----::/:::/--/:::::-----...--${c1}:o-
/+:${c2}--....://:::.:/--/:.::://:....--${c1}:+/
`++:${c2}--...-:::.--.:..:.--.:/:-...--${c1}:++`
/+:${c2}---....----:-..-:----....---${c1}:+/
.++:${c2}---..................---${c1}:++.
-/+/:${c2}----..........----${c1}:/+/-
`:/+//${c2}::--------:::${c1}/+/:`
`:/+//$2::--------$1:://+/:`
-++/:$2----..........----$1:/++-
.++:$2---...........-......---$1:++.
/+:$2---....-::/:/--//:::-....---$1:+/
`++:$2--.....:---::/--/::---:.....--$1:++`
/+:$2--.....--.--::::-/::--.--.....--$1:+/
-o:$2--.......-:::://--/:::::-.......--$1:o-
/+:$2--...-:-::---:::..:::---:--:-...--$1:+/
o/:$2-...-:.:.-/:::......::/:.--.:-...-$1:/o
o/$2--...::-:/::/:-......-::::::-/-...-$1:/o
/+:$2--..-/:/:::--:::..:::--::////-..--$1:+/
-o:$2--...----::/:::/--/:::::-----...--$1:o-
/+:$2--....://:::.:/--/:.::://:....--$1:+/
`++:$2--...-:::.--.:..:.--.:/:-...--$1:++`
/+:$2---....----:-..-:----....---$1:+/
.++:$2---..................---$1:++.
-/+/:$2----..........----$1:/+/-
`:/+//$2::--------:::$1/+/:`
`.-://++++++//:-.`
+1 -1
View File
@@ -3,7 +3,7 @@ _ _wwMMM@M^^^^MMMMww_
M0w_ _wMMM~~ ~~MMm_
~MMy _ww0M~ ~MMy
~MMMM~ o "MM
${c3} jw0M~~MMMw_ _wMM'
$3 jw0M~~MMMw_ _wMM'
wMM~ ~~MMmw__ __w0M~
~ ~~MM0MmwwwwwwwwwMMM~
~~~~^^~~~
+11 -11
View File
@@ -1,14 +1,14 @@
${c3}1ua${c2}
${c3}MMM1ua${c2}
${c1}MM${c2}EE ${c3} MMMMM1uazE${c2}
${c1}MM ${c2}EEEE ${c3}M1MM1uazzEn ${c2}EEEE MME
EEEEE ${c3}MMM uazEno ${c2}EEEE
EEEEE${c1}MMMMMMEno~; ${c2}EE E${c2}
EE ${c1}MMMMMMMM~;;E ${c2}MMMMM M ${c2}
E ${c1}MMMMMMMMM ${c2} E E ${c2}
${c1}MMMMMMMMMMM
${c1}MMMMMMMMM ${c2}EE ${c1}
MM1MMMM ${c2}EEE ${c1}
$31ua$2
$3MMM1ua$2
$1MM$2EE $3 MMMMM1uazE$2
$1MM $2EEEE $3M1MM1uazzEn $2EEEE MME
EEEEE $3MMM uazEno $2EEEE
EEEEE$1MMMMMMEno~; $2EE E$2
EE $1MMMMMMMM~;;E $2MMMMM M $2
E $1MMMMMMMMM $2 E E $2
$1MMMMMMMMMMM
$1MMMMMMMMM $2EE $1
MM1MMMM $2EEE $1
MMMMM
MMM
M
+10 -10
View File
@@ -1,14 +1,14 @@
${c3} !M$EEEEEEEEEEEP
$3 !M$EEEEEEEEEEEP
.MMMMM000000Nr.
${c3}&MMMMMM${c2}MMMMMMMMMMMMM9
${c3}~MMM${c1}MMMM${c2}MMMMMMMMMMMMC
${c1}" ${c3}M${c1}MMMMMMM${c2}MMMMMMMMMMs
${c1}iM${c2}MMM&&${c1}MMMMMMMM${c2}MMMMMMMMs
${c1}BMMM${c2}MMMMM${c1}MMMMMMM${c2}MMMMMM${c3}"
${c1}9MMMMM${c2}MMMMMMM${c1}MMMM${c2}MMMM${c3}MMMf-
${c2}sMMMMMMMM${c1}MM${c2}M${c3}MMMMMMMMM3_
${c2}+ffffffff${c1}P${c3}MMMMMMMMMMMM0
${c2}CMMMMMMMMMMM
$3&MMMMMM$2MMMMMMMMMMMMM9
$3~MMM$1MMMM$2MMMMMMMMMMMMC
$1" $3M$1MMMMMMM$2MMMMMMMMMMs
$1iM$2MMM&&$1MMMMMMMM$2MMMMMMMMs
$1BMMM$2MMMMM$1MMMMMMM$2MMMMMM$3"
$19MMMMM$2MMMMMMM$1MMMM$2MMMM$3MMMf-
$2sMMMMMMMM$1MM$2M$3MMMMMMMMM3_
$2+ffffffff$1P$3MMMMMMMMMMMM0
$2CMMMMMMMMMMM
}MMMMMMMMM
~MMMMMMM
"RMMMM
+20 -20
View File
@@ -1,20 +1,20 @@
${c3} ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢠⠢⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
${c1}⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣶⠋⡆⢹⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
${c5}⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⡆⢀⣤⢛⠛⣠⣿⠀⡏⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
${c6}⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣶⣿⠟⣡⠊⣠⣾⣿⠃⣠⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
${c2}⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣴⣯⣿⠀⠊⣤⣿⣿⣿⠃⣴⣧⣄⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
${c1}⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣤⣶⣿⣿⡟⣠⣶⣿⣿⣿⢋⣤⠿⠛⠉⢁⣭⣽⠋⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
${c4} ⠀⠀⠀⠀⠀⠀ ⠀⣠⠖⡭⢉⣿⣯⣿⣯⣿⣿⣿⣟⣧⠛⢉⣤⣶⣾⣿⣿⠋⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
${c5}⠀⠀⠀⠀⠀⠀⠀⠀⣴⣫⠓⢱⣯⣿⢿⠋⠛⢛⠟⠯⠶⢟⣿⣯⣿⣿⣿⣿⣿⣿⣦⣄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
${c2}⠀⠀⠀⠀⠀⠀⢀⡮⢁⣴⣿⣿⣿⠖⣠⠐⠉⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠉⠉⠛⠛⠛⢿⣶⣄⠀⠀⠀⠀⠀⠀⠀
${c3}⠀⠀⠀⠀⢀⣤⣷⣿⣿⠿⢛⣭⠒⠉⠀⠀⠀⣀⣀⣄⣤⣤⣴⣶⣶⣶⣿⣿⣿⣿⣿⠿⠋⠁⠀⠀⠀⠀⠀⠀⠀⠀
${c1}⠀⢀⣶⠏⠟⠝⠉⢀⣤⣿⣿⣶⣾⣿⣿⣿⣿⣿⣿⣟⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣧⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
${c6}⢴⣯⣤⣶⣿⣿⣿⣿⣿⡿⣿⣯⠉⠉⠉⠉⠀⠀⠀⠈⣿⡀⣟⣿⣿⢿⣿⣿⣿⣿⣿⣦⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
${c5}⠀⠀⠀⠉⠛⣿⣧⠀⣆⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⠃⣿⣿⣯⣿⣦⡀⠀⠉⠻⣿⣦⠀⠀⠀⠀⠀⠀⠀⠀⠀
${c3}⠀⠀⠀⠀⠀⠀⠉⢿⣮⣦⠀⠀⠀⠀⠀⠀⠀⠀⠀⣼⣿⠀⣯⠉⠉⠛⢿⣿⣷⣄⠀⠈⢻⣆⠀⠀⠀⠀⠀⠀⠀⠀
${c2}⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠢⠀⠀⠀⠀⠀⠀⠀⢀⢡⠃⣾⣿⣿⣦⠀⠀⠀⠙⢿⣿⣤⠀⠙⣄⠀⠀⠀⠀⠀⠀⠀
${c6}⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⢋⡟⢠⣿⣿⣿⠋⢿⣄⠀⠀⠀⠈⡄⠙⣶⣈⡄⠀⠀⠀⠀⠀⠀
${c1}⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠐⠚⢲⣿⠀⣾⣿⣿⠁⠀⠀⠉⢷⡀⠀⠀⣇⠀⠀⠈⠻⡀⠀⠀⠀⠀⠀
${c4}⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢢⣀⣿⡏⠀⣿⡿⠀⠀⠀⠀⠀⠀⠙⣦⠀⢧⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
${c3}⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⠿⣧⣾⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠙⣮⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
${c5}⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠙⠛⠀⠀⠀⠀⠀⠀
$3 ⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢠⠢⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
$1⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣶⠋⡆⢹⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
$5⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⡆⢀⣤⢛⠛⣠⣿⠀⡏⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
$6⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣶⣿⠟⣡⠊⣠⣾⣿⠃⣠⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
$2⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣴⣯⣿⠀⠊⣤⣿⣿⣿⠃⣴⣧⣄⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
$1⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⣤⣶⣿⣿⡟⣠⣶⣿⣿⣿⢋⣤⠿⠛⠉⢁⣭⣽⠋⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
$4 ⠀⠀⠀⠀⠀⠀ ⠀⣠⠖⡭⢉⣿⣯⣿⣯⣿⣿⣿⣟⣧⠛⢉⣤⣶⣾⣿⣿⠋⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
$5⠀⠀⠀⠀⠀⠀⠀⠀⣴⣫⠓⢱⣯⣿⢿⠋⠛⢛⠟⠯⠶⢟⣿⣯⣿⣿⣿⣿⣿⣿⣦⣄⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
$2⠀⠀⠀⠀⠀⠀⢀⡮⢁⣴⣿⣿⣿⠖⣠⠐⠉⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠉⠉⠛⠛⠛⢿⣶⣄⠀⠀⠀⠀⠀⠀⠀
$3⠀⠀⠀⠀⢀⣤⣷⣿⣿⠿⢛⣭⠒⠉⠀⠀⠀⣀⣀⣄⣤⣤⣴⣶⣶⣶⣿⣿⣿⣿⣿⠿⠋⠁⠀⠀⠀⠀⠀⠀⠀⠀
$1⠀⢀⣶⠏⠟⠝⠉⢀⣤⣿⣿⣶⣾⣿⣿⣿⣿⣿⣿⣟⢿⣿⣿⣿⣿⣿⣿⣿⣿⣿⣧⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
$6⢴⣯⣤⣶⣿⣿⣿⣿⣿⡿⣿⣯⠉⠉⠉⠉⠀⠀⠀⠈⣿⡀⣟⣿⣿⢿⣿⣿⣿⣿⣿⣦⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
$5⠀⠀⠀⠉⠛⣿⣧⠀⣆⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣿⠃⣿⣿⣯⣿⣦⡀⠀⠉⠻⣿⣦⠀⠀⠀⠀⠀⠀⠀⠀⠀
$3⠀⠀⠀⠀⠀⠀⠉⢿⣮⣦⠀⠀⠀⠀⠀⠀⠀⠀⠀⣼⣿⠀⣯⠉⠉⠛⢿⣿⣷⣄⠀⠈⢻⣆⠀⠀⠀⠀⠀⠀⠀⠀
$2⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠢⠀⠀⠀⠀⠀⠀⠀⢀⢡⠃⣾⣿⣿⣦⠀⠀⠀⠙⢿⣿⣤⠀⠙⣄⠀⠀⠀⠀⠀⠀⠀
$6⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⢋⡟⢠⣿⣿⣿⠋⢿⣄⠀⠀⠀⠈⡄⠙⣶⣈⡄⠀⠀⠀⠀⠀⠀
$1⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠐⠚⢲⣿⠀⣾⣿⣿⠁⠀⠀⠉⢷⡀⠀⠀⣇⠀⠀⠈⠻⡀⠀⠀⠀⠀⠀
$4⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢢⣀⣿⡏⠀⣿⡿⠀⠀⠀⠀⠀⠀⠙⣦⠀⢧⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
$3⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢸⠿⣧⣾⣿⠀⠀⠀⠀⠀⠀⠀⠀⠀⠙⣮⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀
$5⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠙⠛⠀⠀⠀⠀⠀⠀
+9 -9
View File
@@ -1,18 +1,18 @@
:=+******+- -+******+=:
=#-::-::::-=#:-#=-::::-::-#=
:%-::--==-::-%%-::-==--::-%:
+#-:::::=+++${c2}@@${c1}+++=-::::-#=
:#+-::::=%${c2}@@@@@${c1}=::::-+#:
=@%##%${c2}@@@@@@@@${c1}%##%@=
${c2} .#@@@@@@@@@@@@@@@@@@@@#.
+#-:::::=+++$2@@$1+++=-::::-#=
:#+-::::=%$2@@@@@$1=::::-+#:
=@%##%$2@@@@@@@@$1%##%@=
$2 .#@@@@@@@@@@@@@@@@@@@@#.
%@@@@@@@@@@@@@@@@@@@@@@%
-@@@@@@@@@@@@@@@@@@@@@@@@:
.#@@@@@@@@@@%%%%%@@@@@@@@@@@#.
#@@@${c1}+-=*#%${c2}%%%%%%%%%${c1}%%#+--#${c2}@@@#
%@@%${c1}*. .:${c2}=*%%%%*${c1}=: .#${c2}@@@%
:%@@@${c1}#+=-:${c2}:-*%%%%+::${c1}:-=+%${c2}@@@%:
:@@@@%@%%%%@${c1}#${c2}#${c1}#${c2}%@%%%%@%@@@@.
+@@@@@@@@@${c1}%${c2}=*+${c1}%${c2}@%@@@@@@@@+
#@@@$1+-=*#%$2%%%%%%%%%$1%%#+--#$2@@@#
%@@%$1*. .:$2=*%%%%*$1=: .#$2@@@%
:%@@@$1#+=-:$2:-*%%%%+::$1:-=+%$2@@@%:
:@@@@%@%%%%@$1#$2#$1#$2%@%%%%@%@@@@.
+@@@@@@@@@$1%$2=*+$1%$2@%@@@@@@@@+
#@@@@@@@@@@@@@@@@@@@@@@#
-#@@@@@@@@@@@@@@@@@@#-
-*%@@@@@@@@@@%*-
+9 -9
View File
@@ -1,12 +1,12 @@
${c2},--, ${c1}| ${c2},--,
${c2}| `-, ${c1},^, ${c2},-' |
${c2} `, `-, ${c3}(/ \) ${c2},-' ,'
${c2} `-, `-,${c1}/ \${c2},-' ,-'
${c2} `------${c1}( )${c2}------'
${c2} ,----------${c1}( )${c2}----------,
${c2} | _,-${c1}( )${c2}-,_ |
${c2} `-,__,-' ${c1}\ /${c2} `-,__,-'
${c1} | |
$2,--, $1| $2,--,
$2| `-, $1,^, $2,-' |
$2 `, `-, $3(/ \) $2,-' ,'
$2 `-, `-,$1/ \$2,-' ,-'
$2 `------$1( )$2------'
$2 ,----------$1( )$2----------,
$2 | _,-$1( )$2-,_ |
$2 `-,__,-' $1\ /$2 `-,__,-'
$1 | |
| |
| |
| |
+12 -12
View File
@@ -1,17 +1,17 @@
.-.
${c3} ()${c1}I${c3}()
${c1} "==.__:-:__.=="
$3 ()$1I$3()
$1 "==.__:-:__.=="
"==.__/~|~\__.=="
"==._( Y )_.=="
${c2}.-'~~""~=--...,__${c1}\/|\/${c2}__,...--=~""~~'-.
( ..=${c1}\=${c1}/${c2}=.. )
`'-. ,.-"`;${c1}/=\${c2};"-.,_ .-'`
`~"-=-~` .-~` ${c1}|=|${c2} `~-. `~-=-"~`
.-~` /${c1}|=|${c2}\ `~-.
.~` / ${c1}|=|${c2} \ `~.
.-~` .' ${c1}|=|${c2} `. `~-.
(` _,.-="` ${c1} |=|${c2} `"=-.,_ `)
`~"~"` ${c1} |=|${c2} `"~"~`
${c1} /=\
$2.-'~~""~=--...,__$1\/|\/$2__,...--=~""~~'-.
( ..=$1\=$1/$2=.. )
`'-. ,.-"`;$1/=\$2;"-.,_ .-'`
`~"-=-~` .-~` $1|=|$2 `~-. `~-=-"~`
.-~` /$1|=|$2\ `~-.
.~` / $1|=|$2 \ `~.
.-~` .' $1|=|$2 `. `~-.
(` _,.-="` $1 |=|$2 `"=-.,_ `)
`~"~"` $1 |=|$2 `"~"~`
$1 /=\
\=/
^
+5 -5
View File
@@ -1,7 +1,7 @@
${c2} ,${c1}_${c2},
('-_${c1}|${c2}_-')
>--${c1}|${c2}--<
(_-'${c1}|${c2}'-_)
${c1}|
$2 ,$1_$2,
('-_$1|$2_-')
>--$1|$2--<
(_-'$1|$2'-_)
$1|
|
|
+7 -7
View File
@@ -1,14 +1,14 @@
${c2} _,met$$$$$$$$$$gg.
$2 _,met$$$$$$$$$$gg.
,g$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$P.
,$$$$P' `$$$$$$.
',$$$$P ,ggs. `$$$$b:
`d$$$$' ,$$P"' ${c1}.${c2} $$$$$$
$$$$P d$$' ${c1},${c2} $$$$P
$$$$: $$$$. ${c1}-${c2} ,d$$$$'
`d$$$$' ,$$P"' $1.$2 $$$$$$
$$$$P d$$' $1,$2 $$$$P
$$$$: $$$$. $1-$2 ,d$$$$'
$$$$; Y$$b._ _,d$$P'
Y$$$$. ${c1}`.${c2}`"Y$$$$$$$$P"'
${c2} `$$$$b ${c1}"-.__
${c2} `Y$$$$
Y$$$$. $1`.$2`"Y$$$$$$$$P"'
$2 `$$$$b $1"-.__
$2 `Y$$$$
`Y$$$$.
`$$$$b.
`Y$$$$b.
+17 -17
View File
@@ -1,17 +1,17 @@
*@${c2},,&(%%%..%*.
${c1}(@${c2}&%/##############((/${c1}*,
${c2}@${c1}@&${c2}#########${c1}*..../${c2}########%${c1}*..
${c2}@${c1}&${c2}#%%%%%. ${c3},.${c1},${c2}%%%%%%.
/%${c2}(%%%%. ${c1}(${c2}%%%%#.
/${c1}*${c2}%%##,. .,%%###,
,####. ,${c1}*${c2}#%${c1}#${c3}/,(/ ${c2}/${c1}#${c2}###,
((###/ ,,##########${c1}(${c3}/(# ${c2}%####,
%#(((${c1}. .${c1}./${c2}((((((((((((((${c1}(${c2}#/${c3}*.. ${c3}*.${c2}(((${c1}/
${c2}%#///${c1}. ${c3}***${c2}.*/////////////
${c3}#${c2}#////* ${c3}***${c2}.*/////.
${c3}(${c2}(***** ${c3}***
${c2},*****..
..${c1}*${c2}*****.. *${c1}%${c2}/****.
.,,*******,${c3},,../##(${c2}%&${c1}&${c2}#******${c1},${c2}.
,*${c1},${c2},,,,,,,,,,,,,,,,,,,${c1},${c2}..
*//${c1}/,,${c2},,,,,,,${c1},..${c2}
*@$2,,&(%%%..%*.
$1(@$2&%/##############((/$1*,
$2@$1@&$2#########$1*..../$2########%$1*..
$2@$1&$2#%%%%%. $3,.$1,$2%%%%%%.
/%$2(%%%%. $1($2%%%%#.
/$1*$2%%##,. .,%%###,
,####. ,$1*$2#%$1#$3/,(/ $2/$1#$2###,
((###/ ,,##########$1($3/(# $2%####,
%#((($1. .$1./$2(((((((((((((($1($2#/$3*.. $3*.$2((($1/
$2%#///$1. $3***$2.*/////////////
$3#$2#////* $3***$2.*/////.
$3($2(***** $3***
$2,*****..
..$1*$2*****.. *$1%$2/****.
.,,*******,$3,,../##($2%&$1&$2#******$1,$2.
,*$1,$2,,,,,,,,,,,,,,,,,,,$1,$2..
*//$1/,,$2,,,,,,,$1,..$2
+6 -6
View File
@@ -1,7 +1,7 @@
/${c2}o${c3}.
${c1} /${c2}sssso${c3}-
${c1} /${c2}ossssssso${c3}:
${c1} /${c2}ssssssssssso${c3}+
${c1} /${c2}ssssssssssssssso${c3}+
${c1}//${c2}osssssssssssssso${c3}+-
/$2o$3.
$1 /$2sssso$3-
$1 /$2ossssssso$3:
$1 /$2ssssssssssso$3+
$1 /$2ssssssssssssssso$3+
$1//$2osssssssssssssso$3+-
`+++++++++++++++-`
+9 -9
View File
@@ -3,15 +3,15 @@
-WWWWWWWWWWWWWWWWWWw-
\WWWWWWWWWWWWWWWWWWW-
_Ww `WWWWWWWWWWWWWWWWWWWw
-W${c2}E${c1}Www -WWWWWWWWW-
_WW${c2}U${c1}WWWW- _WWWWWWWW
_WW${c2}R${c1}WWWWWWWWWWWWWWWWWWWWWWWWWWWWWW-
wWW${c2}O${c1}WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
WWW${c2}L${c1}WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWw
WWW${c2}I${c1}WWWWWWWWWWWWWWWWWWWWWWWWWWWWww-
wWW${c2}N${c1}WWWWw
WW${c2}U${c1}WWWWWWw
wW${c2}X${c1}WWWWWWWWww
-W$2E$1Www -WWWWWWWWW-
_WW$2U$1WWWW- _WWWWWWWW
_WW$2R$1WWWWWWWWWWWWWWWWWWWWWWWWWWWWWW-
wWW$2O$1WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
WWW$2L$1WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWw
WWW$2I$1WWWWWWWWWWWWWWWWWWWWWWWWWWWWww-
wWW$2N$1WWWWw
WW$2U$1WWWWWWw
wW$2X$1WWWWWWWWww
wWWWWWWWWWWWWWWWw
wWWWWWWWWWWWWWWWw
WWWWWWWWWWWWWw
+6 -6
View File
@@ -1,9 +1,9 @@
${c2} #####%%%
${c2} ##%%${c3}////${c2}%%%%%${c3}///
${c2} #%%%%${c3}////((((////${c2}%
${c1} *@@@@@@@${c3}/${c5},,,${c3}/////${c5},,,${c2}%${c1}@@@@@@@
.@@@@@@@@@@@${c3}////////${c2}%%%${c1}@@@@@@@@@@@@
@@@${c4}...${c1}@@@@@@${c3}////${c2}%%${c3}////${c1}@@@@@@@@@@@@@@@@
$2 #####%%%
$2 ##%%$3////$2%%%%%$3///
$2 #%%%%$3////((((////$2%
$1 *@@@@@@@$3/$5,,,$3/////$5,,,$2%$1@@@@@@@
.@@@@@@@@@@@$3////////$2%%%$1@@@@@@@@@@@@
@@@$4...$1@@@@@@$3////$2%%$3////$1@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
+12 -12
View File
@@ -1,17 +1,17 @@
.....
.';:cccccccc:;'.
':ccccclc${c3}lllllllll${c1}cc:.
.;cccccccc${c3}lllllllllllllll${c1}c,
;clllccccc${c3}llllllllllllllllll${c1}c,
.cllclccccc${c3}lllll${c2}lll${c3}llllllllllll${c1}c:
ccclclcccc${c3}cllll${c2}kWMMNKk${c3}llllllllll${c1}c:
:ccclclcccc${c3}llll${c2}oWMMMMMMWO${c3}lllllllll${c1}c,
.ccllllllccc${c3}clll${c2}OMMMMMMMMM0${c3}lllllllll${c1}c
.lllllclcccc${c3}llll${c2}KMMMMMMMMMMo${c3}llllllll${c1}c.
.lllllllcccc${c3}clll${c2}KMMMMMMMMN0${c3}lllllllll${c1}c.
.cclllllcccc${c3}lllld${c2}xkkxxdo${c3}llllllllllc${c1}lc
:cccllllllcccc${c3}lllccllllcclccc${c1}cccccc;
.ccclllllllcccccccc${c3}lll${c1}ccccclccccccc
':ccccclc$3lllllllll$1cc:.
.;cccccccc$3lllllllllllllll$1c,
;clllccccc$3llllllllllllllllll$1c,
.cllclccccc$3lllll$2lll$3llllllllllll$1c:
ccclclcccc$3cllll$2kWMMNKk$3llllllllll$1c:
:ccclclcccc$3llll$2oWMMMMMMWO$3lllllllll$1c,
.ccllllllccc$3clll$2OMMMMMMMMM0$3lllllllll$1c
.lllllclcccc$3llll$2KMMMMMMMMMMo$3llllllll$1c.
.lllllllcccc$3clll$2KMMMMMMMMN0$3lllllllll$1c.
.cclllllcccc$3lllld$2xkkxxdo$3llllllllllc$1lc
:cccllllllcccc$3lllccllllcclccc$1cccccc;
.ccclllllllcccccccc$3lll$1ccccclccccccc
.cllllllllllclcccclccclccllllcllc
:cllllllllccclcllllllllllllcc;
.cccccccccccccclcccccccccc:.
+1 -1
View File
@@ -6,7 +6,7 @@
+############################;
:#############.**,#############,
*###########+ +###########+
?########## ${c3}Finnix${c1} ##########*
?########## $3Finnix$1 ##########*
*###########, ,###########+
:#############%..%#############,
*############################+
+7 -7
View File
@@ -6,13 +6,13 @@
++osoooooooooooosssssssssssssyyo+++++++o:
-o+ssoooooooooooosssssssssssssyyo+++++++s`
o++ssoooooo++++++++++++++sssyyyyo++++++o:
:o++ssoooooo${c2}/-------------${c1}+syyyyyo+++++oo
`o+++ssoooooo${c2}/-----${c1}+++++ooosyyyyyyo++++os:
/o+++ssoooooo${c2}/-----${c1}ooooooosyyyyyyyo+oooss
.o++++ssooooos${c2}/------------${c1}syyyyyyhsosssy-
++++++ssooooss${c2}/-----${c1}+++++ooyyhhhhhdssssso
-s+++++syssssss${c2}/-----${c1}yyhhhhhhhhhhhddssssy.
sooooooyhyyyyyh${c2}/-----${c1}hhhhhhhhhhhddddyssy+
:o++ssoooooo$2/-------------$1+syyyyyo+++++oo
`o+++ssoooooo$2/-----$1+++++ooosyyyyyyo++++os:
/o+++ssoooooo$2/-----$1ooooooosyyyyyyyo+oooss
.o++++ssooooos$2/------------$1syyyyyyhsosssy-
++++++ssooooss$2/-----$1+++++ooyyhhhhhdssssso
-s+++++syssssss$2/-----$1yyhhhhhhhhhhhddssssy.
sooooooyhyyyyyh$2/-----$1hhhhhhhhhhhddddyssy+
:yooooooyhyyyhhhyyyyyyhhhhhhhhhhdddddyssy`
yoooooooyhyyhhhhhhhhhhhhhhhhhhhddddddysy/
-ysooooooydhhhhhhhhhhhddddddddddddddddssy
+7 -7
View File
@@ -4,13 +4,13 @@ yyysoooooooooooooooooooooooooooo+/::::::
yyyyyoooooooooooooooooooooooo+/:::::::::
yyyyyysoooooooooooooooooo++/::::::::::::
yyyyyyysoooooooooooooo++/:::::::::::::::
yyyyyyyyysoooooo${c2}sydddys${c1}+/:::::::::::::::
yyyyyyyyyysooo${c2}smMMMMMMMNd${c1}+::::::::::::::
yyyyyyyyyyyyo${c2}sMMMMMMMMMMMN${c1}/:::::::::::::
yyyyyyyyyyyyy${c2}dMMMMMMMMMMMM${c1}o//:::::::::::
yyyyyyyyyyyyy${c2}hMMMMMMMMMMMm${c1}--//::::::::::
yyyyyyyyyyyyyy${c2}hmMMMMMMMNy${c1}:..-://::::::::
yyyyyyyyyyyyyyy${c2}yyhhyys+:${c1}......://:::::::
yyyyyyyyysoooooo$2sydddys$1+/:::::::::::::::
yyyyyyyyyysooo$2smMMMMMMMNd$1+::::::::::::::
yyyyyyyyyyyyo$2sMMMMMMMMMMMN$1/:::::::::::::
yyyyyyyyyyyyy$2dMMMMMMMMMMMM$1o//:::::::::::
yyyyyyyyyyyyy$2hMMMMMMMMMMMm$1--//::::::::::
yyyyyyyyyyyyyy$2hmMMMMMMMNy$1:..-://::::::::
yyyyyyyyyyyyyyy$2yyhhyys+:$1......://:::::::
yyyyyyyyyyyyyyys+:--...........-///:::::
yyyyyyyyyyyys+:--................://::::
yyyyyyyyyo+:-.....................-//:::
+13 -13
View File
@@ -1,18 +1,18 @@
eeeeeeeeeeee
eeeeeeeeeeeeeeeee
eeeeeeeeeeeeeeeeeeeeeee
eeeee ${c2}.o+ ${c1}eeee
eeee ${c2}`ooo/ ${c1}eeee
eeee ${c2}`+oooo: ${c1}eeee
eee ${c2}`+oooooo: ${c1}eee
eee ${c2}-+oooooo+: ${c1}eee
ee ${c2}`/:oooooooo+: ${c1}ee
ee ${c2}`/+ +++ +: ${c1}ee
ee ${c2}+o+\ ${c1}ee
eee ${c2}+o+\ ${c1}eee
eee ${c2}// \ooo/ \\ ${c1}eee
eee ${c2}//++++oooo++++\\ ${c1}eee
eeee ${c2}::::++oooo+::::: ${c1}eeee
eeeee ${c3}Grombyang OS ${c1} eeee
eeeee $2.o+ $1eeee
eeee $2`ooo/ $1eeee
eeee $2`+oooo: $1eeee
eee $2`+oooooo: $1eee
eee $2-+oooooo+: $1eee
ee $2`/:oooooooo+: $1ee
ee $2`/+ +++ +: $1ee
ee $2+o+\ $1ee
eee $2+o+\ $1eee
eee $2// \ooo/ \\ $1eee
eee $2//++++oooo++++\\ $1eee
eeee $2::::++oooo+::::: $1eeee
eeeee $3Grombyang OS $1 eeee
eeeeeeeeeeeeeeeeeeeeeee
eeeeeeeeeeeeeeeee
+17 -17
View File
@@ -1,17 +1,17 @@
${c2} :dc'
'l:;'${c1},${c2}'ck. .;dc:.
co ${c1}..${c2}k. .;; ':o.
co ${c1}..${c2}k. ol ${c1}.${c2}0.
co ${c1}..${c2}k. oc ${c1}..${c2}0.
co ${c1}..${c2}k. oc ${c1}..${c2}0.
.Ol,. co ${c1}...''${c2}Oc;kkodxOdddOoc,.
';lxxlxOdxkxk0kd${c1}oooll${c2}dl${c1}ccc:${c2}clxd;
..${c1}oOolllllccccccc:::::${c2}od;
cx:ooc${c1}:::::::;${c2}cooolcX.
cd${c1}.${c2}''cloxdoollc' ${c1}...${c2}0.
cd${c1}......${c2}k;${c1}.${c2}xl${c1}.... .${c2}0.
.::c${c1};..${c2}cx;${c1}.${c2}xo${c1}..... .${c2}0.
'::c'${c1}...${c2}do${c1}..... .${c2}K,
cd,.${c1}....:${c2}O,${c1}
':clod:'${c1}
${c1}
$2 :dc'
'l:;'$1,$2'ck. .;dc:.
co $1..$2k. .;; ':o.
co $1..$2k. ol $1.$20.
co $1..$2k. oc $1..$20.
co $1..$2k. oc $1..$20.
.Ol,. co $1...''$2Oc;kkodxOdddOoc,.
';lxxlxOdxkxk0kd$1oooll$2dl$1ccc:$2clxd;
..$1oOolllllccccccc:::::$2od;
cx:ooc$1:::::::;$2cooolcX.
cd$1.$2''cloxdoollc' $1...$20.
cd$1......$2k;$1.$2xl$1.... .$20.
.::c$1;..$2cx;$1.$2xo$1..... .$20.
'::c'$1...$2do$1..... .$2K,
cd,.$1....:$2O,$1
':clod:'$1
$1
+6 -6
View File
@@ -7,12 +7,12 @@
.oddddddddddddddc.
,dddddddddddddddo.
,ccoooooooocoddooo:
,cooooooooooooooooop ${c3} c000x.
${c1}.cooooooooooooooopcllll${c3} .cddddddo.
${c1}coooooooooooooop' .qlll.${c3} .ddoooooooo;
${c1}cooooooooooc; ${c3}'qlllp. .ddoooooooooo;
${c1}.cooooooc; ${c3}'lllbc...coooooooooooo;
${c1} .cooc' ${c3}.llllcoooooooooooooo.
,cooooooooooooooooop $3 c000x.
$1.cooooooooooooooopcllll$3 .cddddddo.
$1coooooooooooooop' .qlll.$3 .ddoooooooo;
$1cooooooooooc; $3'qlllp. .ddoooooooooo;
$1.cooooooc; $3'lllbc...coooooooooooo;
$1 .cooc' $3.llllcoooooooooooooo.
.coooooooooooooop:
.coooooooooooooop'
.cooooooooooooop.
+16 -16
View File
@@ -1,19 +1,19 @@
${c1} ........::::....
$1 ........::::....
::################::..
:########################:.
:######**###################:
:###${c2}&&&&^${c1}############ ${c2}&${c1}#######:
:#${c2}&&&&&${c1}.:##############:${c2}^&o${c1}`:###:
:#${c2}&&&&${c1}.:#################:.${c2}&&&${c1}`###:
:##${c2}&^${c1}:######################:${c2}^&&${c1}::##:
:#############################:${c2}&${c1}:##::
:##########${c2}@@${c1}###########${c2}@@${c1}#####:.###:
:#########${c2}@@${c3}o${c2}@@${c1}#########${c2}@@${c3}o${c2}@@${c1}########:
:#######:${c2}@@${c3}o${c5}0${c3}o${c2}@@@@${c1}###${c2}@@@@${c3}o${c5}0${c3}o${c2}@@${c1}######: :
:######:${c2}@@@${c3}o${c2}@@@@@@${c1}V${c2}@@@@@@${c3}o${c2}@@@${c1}######:
:#####:${c2}@@@@@@@@@@@@@@@@@@@${c1}:####;
:####:.${c2}@@@@@@@@@@@@@@@@${c1}:#####:
`:####:.${c2}@@@@@@@@@@@@@@${c1}:#####:
``:##:.${c2}@@@@@@@@@@@@${c1}^## # :
: ## ${c2}\@@@;@@@/ ${c1}:: # :
${c2} VVV
:###$2&&&&^$1############ $2&$1#######:
:#$2&&&&&$1.:##############:$2^&o$1`:###:
:#$2&&&&$1.:#################:.$2&&&$1`###:
:##$2&^$1:######################:$2^&&$1::##:
:#############################:$2&$1:##::
:##########$2@@$1###########$2@@$1#####:.###:
:#########$2@@$3o$2@@$1#########$2@@$3o$2@@$1########:
:#######:$2@@$3o$50$3o$2@@@@$1###$2@@@@$3o$50$3o$2@@$1######: :
:######:$2@@@$3o$2@@@@@@$1V$2@@@@@@$3o$2@@@$1######:
:#####:$2@@@@@@@@@@@@@@@@@@@$1:####;
:####:.$2@@@@@@@@@@@@@@@@$1:#####:
`:####:.$2@@@@@@@@@@@@@@$1:#####:
``:##:.$2@@@@@@@@@@@@$1^## # :
: ## $2\@@@;@@@/ $1:: # :
$2 VVV
+3 -3
View File
@@ -1,4 +1,4 @@
${c2} `
$2 `
. . `
`` - . .
`.` -` `. - `` .`
@@ -7,8 +7,8 @@ ${c2} `
-+/so::h:.d-`./:`.`
:hNhyMomy:os-...-. ````
.dhsshNmNhoo+:-``.```
${c1}`ohy:-${c2}NMds+::-.``
````${c1}.hNN+`${c2}mMNho/:-....````
$1`ohy:-$2NMds+::-.``
````$1.hNN+`$2mMNho/:-....````
````` `../dmNhoo+/:..``
```` .dh++o/:....`
.+s/` `/s-.-.:.`` ````
+16 -16
View File
@@ -1,16 +1,16 @@
${c1} / ${c2}#
${c1}////& ${c2}#####
${c1}///// ${c2}######
${c1}///// ////////// ${c2}######
${c1}///// //////////////////// ${c2}######
${c1}////////////////////////// ${c2}######
${c1}///////// /// ${c2}######
${c1}/////// / ${c2}######
${c1}////// ${c2}######
${c1}///// ${c2}######
${c1}///// ${c2}######
${c1}///// ${c2}######
${c1}///// ${c2}######
${c1}///// ${c2}######
${c1}///// ${c2}#########
${c1}////& ${c2}########
$1 / $2#
$1////& $2#####
$1///// $2######
$1///// ////////// $2######
$1///// //////////////////// $2######
$1////////////////////////// $2######
$1///////// /// $2######
$1/////// / $2######
$1////// $2######
$1///// $2######
$1///// $2######
$1///// $2######
$1///// $2######
$1///// $2######
$1///// $2#########
$1////& $2########
+11
View File
@@ -0,0 +1,11 @@
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠰⣶⣶⣦⣤⣄⡀⠀
⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢹⣦⣤⣌⣙⠻⢶⣄⠀
⠀⠀⠀⠀⠀⠀⠀⢀⣀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⢀⡴⠊⣤⣶⣶⣶⣦⣤⣼⡧⢤⡈⠙⠳⣦⡙⢷⣄⠀
⠀⠀⣠⣴⣶⣿⣿⣿⣿⣿⣿⣶⣦⣀⠀⠀⠀⠀⠀⠀⠀⢀⣴⡿⢾⡷⣢⢄⣠⣬⣭⣝⣿⣿⣄⠈⠓⢄⠈⠳⡄⠙⢷
⢀⣾⣿⡿⠛⠉⠀⠀⠀⠀⠉⠛⠿⣿⣷⣦⡀⠀⠀⠀⡖⠉⣠⠶⢛⣼⣡⡍⢉⠍⠉⠙⠻⣿⣿⣧⠀⠀⠁⠀⠀⠀⠀⠳⡀
⢸⣿⡟⠁⠀⠀⠀⠀⠀⠀⠀⠀⠀⠈⠙⢿⣿⣦⣄⠀⠀⠈⠁⡠⠟⣫⣵⡇⠀⠀⠀⠀⠀⢈⣿⣿
⢸⣿⡇⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠙⢿⣿⣷⣄⠀⠚⠀⠞⠋⠀⠀⠀⠀⠀⠀⢀⣼⣿⡟
⠸⣿⣿⡀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⣀⠀⠀⠙⢿⣿⣷⣤⡀⠀⠀⠀⠀⠀⠀⢀⣠⣿⣿⠏
⠀⠹⣿⣷⣄⠀⠀⠀⠀⠀⠀⠀⣀⣴⡞⠁⠀⠀⠀⠀⠈⠛⠿⣿⣿⣶⣶⣶⣶⣾⡿⠟⠋
⠀⠀⠙⠿⣿⣷⣶⣦⣴⣶⣾⣿⠿⠋⠀⠀⠀⠀⠀⠀⠀⠀⠀⠀⠉⠉⠉⠉⠉⠁
⠀⠈⠉⠛⠛⠛⠛⠉
+15 -15
View File
@@ -1,17 +1,17 @@
.${c3}.
${c1} 75${c3}G!
${c1} ^?PG${c3}&&J.
${c1} :!5GPP${c3}&&&B!
${c1} :YPPPPP${c3}&&&&&Y:
${c1} !5PPPPPP${c3}&&&&&&B!
${c1} :?PPPPPPPP${c3}&&&&&&&&Y~
${c1} !5PPPPPPPPP${c3}###&&&&&&B7
${c1} :?PPPP5555555${c3}B####&&&&&&5:
${c1} ~5PPPP555YJ${c5}7!~7?${c3}5B###&&&&&B?.
${c1} .:JPPPP5555Y${c5}?^....:^?${c3}G####&&&&&5:
${c1} 75PPP555555Y${c5}7:....:^!${c3}5#####&&&&&B7.
${c1} :JPPPP${c2}555555YY?${c5}~::::^~${c2}7YPGBB###${c3}&&&&&5^
${c1}75${c2}GGPPPPPP555555YJ?77??YYYYYY55PPGGB#${c3}&B?
${c2}~!!7JY5PGGBBBBBBBBGGGGGGGBGGGGGP5YJ?7~~~
.$3.
$1 75$3G!
$1 ^?PG$3&&J.
$1 :!5GPP$3&&&B!
$1 :YPPPPP$3&&&&&Y:
$1 !5PPPPPP$3&&&&&&B!
$1 :?PPPPPPPP$3&&&&&&&&Y~
$1 !5PPPPPPPPP$3###&&&&&&B7
$1 :?PPPP5555555$3B####&&&&&&5:
$1 ~5PPPP555YJ$57!~7?$35B###&&&&&B?.
$1 .:JPPPP5555Y$5?^....:^?$3G####&&&&&5:
$1 75PPP555555Y$57:....:^!$35#####&&&&&B7.
$1 :JPPPP$2555555YY?$5~::::^~$27YPGBB###$3&&&&&5^
$175$2GGPPPPPP555555YJ?77??YYYYYY55PPGGB#$3&B?
$2~!!7JY5PGGBBBBBBBBGGGGGGGBGGGGGP5YJ?7~~~
.::^~7?JYPGBB#BGPYJ?7!7^:.
..:^...
+10 -10
View File
@@ -1,10 +1,10 @@
${c1}....................-==============+...
${c1}....................-==============:...
${c1}...:===========-....-==============:...
${c1}...-===========:....-==============-...
${c1}....*==========+........-::********-...
${c1}....*===========+.:*====**==*+-.-......
${c1}....:============*+-..--:+**====*---...
${c1}......::--........................::...
${c1}..+-:+-.+::*:+::+:-++::++-.:-.*.:++:++.
${c1}..:-:-++++:-::--:+::-::.:++-++:++--:-:.
$1....................-==============+...
$1....................-==============:...
$1...:===========-....-==============:...
$1...-===========:....-==============-...
$1....*==========+........-::********-...
$1....*===========+.:*====**==*+-.-......
$1....:============*+-..--:+**====*---...
$1......::--........................::...
$1..+-:+-.+::*:+::+:-++::++-.:-.*.:++:++.
$1..:-:-++++:-::--:+::-::.:++-++:++--:-:.
+4 -4
View File
@@ -9,10 +9,10 @@
:loooocooo cloo loooo
loooo :ooooool loooo
looo cooooo cooooo
looooooooooooo ;loooooo ${c2}looooooc
${c1}looooooooo loo cloooooool ${c2}looooc
${c1} cooo cooooooooooo ${c2}looolooooool
${c1} cooo: ${c2}coooooooooooooooooool
looooooooooooo ;loooooo $2looooooc
$1looooooooo loo cloooooool $2looooc
$1 cooo cooooooooooo $2looolooooool
$1 cooo: $2coooooooooooooooooool
loooooooooooolc: loooc;
cooo: loooooooooooc
;oool looooooo:
+1 -1
View File
@@ -5,7 +5,7 @@
.';;;:::;,,.x,
..'''. 0Xxoc:,. ...
.... ,ONkc;,;cokOdc',.
. OMo ':${c2}dd${c1}o.
. OMo ':$2dd$1o.
dMc :OO;
0M. .:o.
;Wd
+8 -8
View File
@@ -7,13 +7,13 @@
.'. .,,,,' .,,,,,. .'.
'.. .,,,,'',,,,;. .''
.'. .,,,,,,,;;. ..'
.'. .,,,,;;;;;${c2}, ${c1}..'.
'.. .,;;;,${c2}';;;;;, ${c1}..'
.'. .;;${c2};;' .;;:::: ${c1}.,.
'.. ${c2}.;;;;' .::::::. ${c1}.,'
'.. ${c2}.;;;;' .::::::. ${c1}.,${c2}'${c1}
.'.. ${c2}.',.
${c1}',.. ${c2}.','
${c1}.,,... ${c2}..',,.
.'. .,,,,;;;;;$2, $1..'.
'.. .,;;;,$2';;;;;, $1..'
.'. .;;$2;;' .;;:::: $1.,.
'.. $2.;;;;' .::::::. $1.,'
'.. $2.;;;;' .::::::. $1.,$2'$1
.'.. $2.',.
$1',.. $2.','
$1.,,... $2..',,.
..,,''........',,,.
......

Some files were not shown because too many files have changed in this diff Show More