240,294 Commits over 3,867 Days - 2.59cph!
Lazy-instantiate WorldSplineSharedData in the same way as TrainWagonLootData. Change TrainWagonLootData back to not using null-coalescing operator. Although it was perfectly fine in this case, ScriptableObjects do have the same null overriding situation as MonoBehaviours, and I'd rather not give anyone the wrong ideas.
VR: Clean up render model code, make everything non-blocking
VR: Hook up IVRRenderModels interface
VR: Add render model support for controllers, VR Model Renderer component (sbox-issues/issues/1001)
Uses `vr_controller_01_mrhat` if no model available
VR: Render model textures, fix axes
VR: Model renderer component is separate, takes a model renderer as property, doesn't run in non-vr
Fixed bug causing doubled markers to appear
Map now shows shelters owned by player
This functionality automatically disables if max_shelters convar is set higher than default
PhysicsComponent => Rigidbody
Disabled crunch on a few more textures
PhysicsComponent => Rigidbody
Rigidbody component exposes PhysicsBody (fixes sbox-issues/issues/4177)
protocol++
More additions to texture streaming exclusion paths
Enabled mips and streaming on 34 textures
Shelters now inform local player if owner
Shelters map marker is now instantiated by owned shelters
▄▅█▊▊ ▅▍▉ ▄▋▅▉▋▄▌█ ▌▄▍▉ ▅▇▄▋ ▍▍█▅▊ ▉▌ ▊▉▍▆, █▆▉▄▄▉▊ █▅█▄█▄▋
Different approach to multiple cameras support. Camera.Main is set to the camera that has the "maincamera" tag
Set default camera priority to 1
Give Camera prefab the "maincamera" tag by default
Add "maincamera" tag to default editor scene
Editor viewport camera shouldn't really care about render tags
Render game viewport from tools if game isn't playing
Clean up GameMenuDll.OnRender
Docs
Use IsMainCamera bool instead of a tag, documented all CameraComponent properties
Don't continuously set Camera.Main
Pull workflow: build content before tests
Enabled texture streaming on 3310 textures
Added a few more exclusion conditions for finding streamable textures
Leaderboard backup, run #8103
Try to differentiate between game instances that are multiplayer joins, to allow missing/empty packages etc
Don't continuously set Camera.Main
Disabled mesh compression on 396 meshes
Added tiny custom tool to find unoptimized models
Fix editor startup scene not being an editor scene
BaseItemWidget accept double click
Fix sceneview errors until hovered over sceneview
Fix error due to networking with no active scene
Add materials/default
Dev Cam + Improved Ducking and Interaction
Increased streaming mip map budget to 1GB
Re-enabled texture streaming
▋█▆▆█ ▅▋▉▄ ▌▇▄▋▊▊/ █▅▅▉▇▄█▇▅/ ▇▊▊▆▆▊▍
Fix Sandbox.Hotload warning
Fix unreachable razor code generation warning
Use IsMainCamera bool instead of a tag, documented all CameraComponent properties
Different approach to multiple cameras support. Camera.Main is set to the camera that has the "maincamera" tag
Set default camera priority to 1
Give Camera prefab the "maincamera" tag by default
Add "maincamera" tag to default editor scene
Editor viewport camera shouldn't really care about render tags
Render game viewport from tools if game isn't playing
Clean up GameMenuDll.OnRender
Docs
Fix more warnings
Fix crash in BuildRayTraceObject
Add Edit/Publish Project
Added shelter limit to toolbar - in the same way as bag limits are displayed
Define SerializedProperty.IsEditable in inherited types where possible (ReadOnlyAttribute or !CanWrite)
https://files.facepunch.com/tony/1b1311b1/sbox_R9sUMW3RGj.png
Make sure OnStart is always called before OnUpdate/OnFixedUpdate (fixes sbox-scenestaging/issues/107)
Add `cached_browser_refresh_cooldown` convar (default 60s)
Lower cached browser refresh delay from 5min -> 1min on the client
Add clothing_c files as an explicit exclusion to the .gitignore rule that excludes compiled content — and restore the files, since contentbuilder can't take care of them for now
▍▊▅█▉ ▌▍▄█ ▄▋▌_▌▍▉_▇▊▅▅▇▇_▆
changed animation clip name for throwing to 'throw' on some weapons for player update and assigned correct anim in spear override controller fro the throw
Delayed some calls (RenderScale, TrainWagonLootData) until after shaders bundle is loaded to prevent shader duplication in memory
Moved all shaders to their own bundle (shared/shaders.bundle) and made it load first, before all other bundles
▆▉▆▍▇▊▋ ▉▉▉ ▊█▄▆▊▍▋▋▍▊▇▉▍▅▇▋█▌▋▉ ▉▆▅▄▋▍▇ ▍▌▉▍▊▌▅▉ ▇▅█▆▉██▋▉
▅▋▊▅
▉▊▅▍▋▄▍█▆▍▉ ▋▉▋▌█▋ ▋ ▋▌▊▄▉▄▉▅ ▄▅ █▉▌▄ ▆▆█▆ ▇▍ ▌▋▅▄
▄▅▍▉▄▋▉▇ ▌█▍▌ █▉▄▅
█▊▄▌▍▋ ▅▉█▆ ▇▊▄▋▌▍▋▉
* ▍▇▄▄▅ ▇▊▅▊█▄█▌ ▌▅▅▉ ▆▋▆▄▇▄▇▄▋ ▇▌ ▆▄▊▄▅▌▉▋▅▇
* █▊▆▌▄▋█▄ ███▌.▆▊▆█▉▊▆▋▄ █▍ ▋▍▊▌.▄▆▍▇█▄▅▌▄ ▄▆▆ ▇▌▍▇ ▍▇▇▋▄▋. ▋▇▍█▇ ▇▄▋▉▌ █▍█▋█▅▄▋▅ ▋▅█▆▇▍▌▄ ▄▍▇▉▌
▌▆▉▊█▄▊ ▌▋▇▉█ ▋██ ▅▌▌▇▉▊ ▆▊▆▅ ▉█▉▆▍▋ ▅▇ ▊▅▆▆▌▋▄▄▆ ▄▌▍▌ ▉██▌▆▅▄ ▍▅▉▊▆█▌ ▉▅▉▌▉▇▄▅▇▆
▍▄▅▇ █▇▅▌▇▇▍ ▄▅█▋ ▊▅█▉▉▉▍▇▌█▍▋▅▆▉▋█▅▅▌▅▍▋ █▋▇▋▌
▅▌█ ▍▅▅_▌▆▉▊▌▊▄▋ ▇▌▉▊▄▉▌▉▉▍ ▍▉▉▊ ▇▄▋ ▅▌▄▅▍ ▄ ▄▉▄▇▆ ▅▌▆ ▉▌█▊▌▌
▄▇ ▅▄▉ ▇▉▄▊▉ ▆▌▉ ▌▋▌▍▉▇▌▉▄▄ ▆▉ █▊ ▊█▊▅▄█▅▋▋ ▊▍ ▊▉█ ▍▍█▅▇▉▍
▉▋▌▌▇ ▄▇▍▇_▍█▅▊▍▉▍█'▅ ██▅▍▅▍▍▋▇▉ ▅▊▄▆ ▌▋▅ ▊▌▆▋█▋▋█
▊▉█▌▉ █▍▍ ▍▍▅▌▉▉▌ ▌▉▊▌ ▌▊▍ ▆▇▍▋▍▅▅█▍▋▇▉ ▉██▍ ▌▅▅▊:▄▆▋▌▊▄▍▇▅▋▍▍▋▋▆▅▍
▋█▌▋▉ ▍██▍ ▄▇█▊▌▋▊▍▌▄
▉▅▅▌▅ ▋▆▆▌█▋ ▌▅▇▄▄▊▇▌▉ ▆▇▇▊▄▉ ▍▉▍▅▇▋.▌▆▉▌▊▊▋▄▆▋
▊▄▆▅▅ ▄▊▋▄ ▇▅▇▋▆▋█▋
* ▉▋▊▇▊ ▅▍▍▍.▋▅█
* ▄▉▌▆▉ ▋▇█▌█▍ ▍▅ ▅▍▊▉█ ▇▅▅▌▅▆▉▇ ▍▌▆▆▆ ▇█▆▄▋▆ ▄▆ ▉▇▄▍▅.▌▋▅█▅
▇███▄▆ ▆▇▊
▋▅▋█▆ ▊▅▉▉▌▅▅ █▉▆▋▋▅▌▄▇▌▅▉
▋▌▋▌▌ ▇▄▋█ ▉▇▄▌▌▌▆▍
* ▆▆▆▇▍▌▍▅▊▇▅▇▇ ▆▌▄▆▋▇▌ ▇▋▆ ▌▇▋▌▅▆▍▍▇▉▄ ▄▊ ▍▅▋▍▌▊▅▍▍█▅
▇█▄▊ ▄██▊▉ ▍▇▄
▅▄▋▍▋▇:▋▋▆▆▆▄▄▄ ▇▄▋▉▆▍▌▊▉▋ ▆▇ ▌▌▅ ██▊▉▄▉▍▅▊
█▉▅▊ ▌▄▅▍▉▄ ▄█ ▍▄▋█▅▉▉▍▋ █▉▌▊▌▋▊▉▄▉ █▍▄ ▄▊▋▆ ▌█▉▆▌▌▌▋██ ▌▄▍▄▇▅▍ ▄▄▆ ▄▄▇▉ ▇▉ █▊█ ▌▍▅▊▍▋▄██ ▊▊▄▌, ▇▆▋█▅▉▄ ▋▅ ▄▉█▅▋▄▄▌.
▆▇▅▆.▉█▋▇▍▇▇▋ ██▇▆▅▊▄▌▌▇ ▍▉ ▋▋▍▉▅▋▍▍█
▉▇▇▌ ▊▋▌▍▄▅ ▅▋ ▄▊▊▆▆▄▄▄▅ ▍▍▇▉▉▌▉▆▆▆.
▇▇▆▌▄ ▄▇▉▍ ▆▌▌▆▋▌▊: ▅▇▇▍▋▌▍▆ ▉█▍▆▄.▍▇▋▌
▍▌█▋▋ ▉▆▍▉▅▋▇▅
!▊▉▋▍▊ ▅▌▆██▇▄ ▆▊▄▄ █▍▍▅▍▆▍▇
! ▌▇▋▅ ▄▅▋▆▍ █▋█▉▅▆▅ ▌▊█▇ ▅▋█▌▆▌▅▆
▌▅▆▇▊ ▇▄▇▇ ▋▆▇▋▅▅▌
* ▍▊▉▆▊ "▌▆▆▌▊▆▅▌▍▌▅▄"/█▇▋▅▇▋ ▅▄▍▋ ▄▇▅ ▉▍▉▊▍ ▉▇▌▊ ▍▍▍▉_▄▅▍▉ █▌▄▆▇▋█▋
▉▌ ▇▅▋ ▄▆▍▊▄▆▉▆ ▄▆▌▆▌▇▌▅▌▋ ▄▅▇▆▅▇▍ ▆▆▅▌█ ▋▍▋▍▍▊▄▌▍▌ (█▇█▉▅▍█)
▇▊▊▊▄ ▇▄▇▋▄▉▋ ▋▄ █▇▉▉▍▉▍█ ▅▄▄▌▅▋▍
▌▉▅▍▌ ▌▉▆▋▋▉.▊▉▅ ▊█▅▅▋▍▄ ▌▄ ▆█▉▌ █▉ ▊▅▅▇ ▇▍▉█▋ ▍▅
▍▄▋▋ ▇▌_▇▇█▉_▍▊█▋ ▍▍█ ▌█_▆▍▄▊_▅▊█▇▅▅▅▄▇
▆▉▄▍▄▇▍ ▊▅▉▄ ▍▋▉▋▊▇▍ ▄▉▆▋ ▆▌█▊▅▍'█▅ ▅▇▉▉▇ ▌▊▄▍ ▄▍▌▄█▄▋
█▄▊▋▋ ▆▄█▄▉ ▇▅▉
█▆▄▅ ▄▇▊█▅ ▅▍▍▇▄▍▊ █▊▋▌▋ ▅▄▆
▋▇▍▆▅▉▌ ██▉█▌▍▊▄▅▇▆:▇▌▋▌█() ▅▅▋ ▉▌▊▆▌▆▆▋█▊▇:▇▇▉▆█()
█▌▉▅▋ ▋▊▊ ▉█▌▅█▍▍▌▅▇▍. ▄▌▅▋ ▆▊▅▅▇▋▄▌▋ ▊▆▇▊ ▊▄▄▌▅▍▋▇ █▄▆, ▉▋ ▉▅▄▉▆▊▆▅ ▇█ ▉▉▆▌█ ▉▄▉▅ ▉▇.
▆▅▇▅▌▌█▇ + ▌▉▌ ▊▊▆▌▌▅▇▊ ▄▉▆▉█▆▍▅▆
▌▇▉▅▍█▆ ▄▊██▋▌▋▉ ▍▋▍▊ ▉▊▊▌▅▉▉▋▍ ▊▌▍ ▍▋ ▅▉█▄▋▊ ▅▄▋▅▋ ▍▍▆▋▋▉
▊▆▆ ▉▊▅█▇▉█ ▊▇█_▌▉█▍▋▆▄▌▍▇▉ ▉▌ █▅▅ (▉▇▄▅ ▄▅)
▊▋▆ ▉█▍ ▋▅▅▉▊▇ ▇▆█▍█ ▉▋▋▋▍▋ ▍▋ ▊ ▇▅▄▅▉▅▇▊▌
▋▋▆▌▄ ▅▌▅:▍▌█▅▌▋▊▌▉█▇█ ▋▄▆ ▋▋▉:▉▅▄▍▉▄▋█▋▅▆▊▋▉▌▋▋▄ ▇▉▉ █▇ ▇▄▋▄
▅▄▋ ▉█▄█/▊▊▅▄▇█▇ █▄█▉▌▋▋ ▉▄▆ ▅█▆▄▄ ▋▊▍▌▄▉ ▇▍ ▊▌▊
▆▍▆: ▉▋▋ ▌▅▅█▌▌▅ ▄▆▊▄█▇▄▋▇▉▌ █▄▉█
▌▄▄▌▋ ▆█▋:▇█▉█▉▅▍▊▍▌▋▌▋▍▇█▆ ▋▌▌ █▇▄:▊▅█▇▄▇▄▄▍▉▉▆▉ ▍▍▉ ▊█ ▌▍▊▆▋
▋▌▊ ▉▉▍▇▉▆▍▇▍ ▆▄▌▍▆▌▋▌▆▅ ▋▋▉▇▆▆ █▊██ ▇▇▋█▇▌█
▅▉▍▆▆▆ ▄▊█▌ ▉▉▄▌▇▉▉
* ▅▌▄▆▋ ▅▅▊▉ ▍▉▍▇▇ ▉█▇▊▆▆/▌█▉ ▉▋▌▇▍ ▄▇ ▉▍▌ ▆▆█ ▌▆ ▇ █▌▊▋▇ █▋▄█
▍▅▋ ▆▅▆▊▋▇██▍▋▅▊▆▇▉▄▅:▅▄▊▄▆▌ █▆▋ ▆▄▍▋▍ ▍▌▉▇▌ ▊▉▉▅▇▌
█▊▊▄█▍ ▍▋▍▇_▌▉▊▍▆▋█▄ ▄▇ █▆▌ ▆▋▊▍▊▇▉▉▍▆▆ ▌▆▋ ▆▆▆ ▅▆▋▊▄▇▍ ▇▊▍▅▉▄
▄▇▆▋█ ▇▋▍▆▇▇▋▍▆-█▅▍▍▅▋/▋▆▆█▆▅/▇▋▊▍
▇█▄▌▆ ▍▊█▇ ▍▉▆▌▌▇
* ▌▅▅█▆▊▍▍ ▋▇▋▄.▋▉▇
▍▍▇▇▍ ▍▊▄▍██ ▉▊▆▅██▇▄▇▍▅ ▇▇ ▇█▉▆_▉█▌▌▌▄▍▊ ▍▉▌█▆▄▆ ▍▋▅▇▊
▊▌▇▋▊ ▆▇▌▊ ▄▍▉▇▇▉ █▊▉▊▊
* ▇▉▉▌█ ▊▄▌▍▇▊▆ ▄▌▊▋▅▅▆▊▊▄ ▍▌▉▇ ▄▌▉▋▇ ▅█▋ ▆▄▆█ ▆▄▅█▌ ▇█▋▉█ ▊▋▇█▇▄▍▆ ▉ ▋▇▅▉
* ▅▇▆▍█ ▋▇▉ ▉▉▊▍▆▉ ▅ ▅▊█▋▌ ▉▆▋█▌▌█ ▋▄▉█ ▅▄█▍▅▊ ▇▍ ▄▅▍▅ ▆▊▉▄█ ▌▄▌▆▉ ▇▍▍▉▌ ▄▊▆ ▉▉▄▄█▌
* ▋▉▍▉▆ █▋▊▊▄▉▋ ▆▋▍▌▍▊▆ ▊▋ ▉▍▉▌ ▇▇▋▊▇▄▆ ▆▋▇▍▌▉ ▊▋▌ ▋▆▌▄▄▋ ▌▇▊▊█▋▌ ▅▆▊█▊▍ ▅▄▍ ▇▄▇▉▉█ ▄▄▇▍▉▋▍▇▄
█▋▉██ ▍▋▊ █▇▊▅▆█ ▌▊▊▌ ▋▌▌▋▉▆ █▆▊▆█▆▄ ▅▍ ▉▍▍ ▇▊▉▄▊█ ▍▅▍▆▋▉▉▇▍
▍▅█▆ ▋▅▇▍▅▆█ ▅▅▆█ ▅▋ ▉▍▇▍▆▋ ▆█▌█▇▅█▅. ▋▅▇▄▄ █▇▅▋▄▊▇ ▋▅▆▋▍█▅ ▄▄▉▍▍ ▋▇▆▋ ▍▋▄▌▋ ▅▋▄▋ ▅█▋▇▇▆▇ ▆▌▄▄▆▄ ▉▌▄ ▇▄▅▅█ ▇▊▆▊▆▍
▍▌▊▉█▅▍▋ ▄▇▋▋ ▇▊▊▍▇/▆▉▌▆▅ ▋▇▅▊▌▇▌ ▋█▋▄▆ ▇█▅▉▉▄ ▅▋ ▋▊▊▆▌ ▉▋█▇▄▄█ ▋▋▅▆▇▌
▆▉▍ ▇▍▄ "▋▄▆▆▋ ▌▊▉▊▉ █▄▋▌▋▇▊ ▇██▊" ▉▉▉▇▌ ▅▋▋▉ ▋█ ▋▊▉▌▆█
▊██▉ ▋▅▇▄▉▉▄ ▍▍▉▌ ▉▇ ▅█▋▍ ▌▋▌▋▅▋ ▍▇▅ ▇▍▅▆▋▍. ▍▅▋▇ ▆▆▇▉▋▌▊ ▆▉▆ "▆▇▇ ▉▉▋▋▉▌▊█" █▋▇▆▄▌▋▌ ▍▉▅ █▄█▊▉▅▄
▍█▉ ▇▄▌▍ ▊▉▊▍▅▇▇▅▍▌▉ ▍▇▊▄▍ █ ▊▊▄▍▆▄▌ ▅▊▉▍ ▅▍▄▊_▉▆█▆▄▌_▋▅▌▆
▅▊▅▊▋ ▇▌▉_▅▋█▋▄▇▉ ▌▌▉▌ █▍▄▋▌▇▅ ▆▌▌_▉▍▉▆▊▅▇ ▋▉▌▅▄▉▌ ▇▆ ▋▆▄▊▆ ▍▅
▆█ ▇▅▌ ▆▆▊▅▄ ▊▉▋▌▉▇▆▅▄ "▆▋▋▇▇▆'█ ▊▊▌▅ ▅▊▉▋▆▋ ▇▍▉" █▇ ▆▍▍▍▆ ▉▇▆▌▌
▉▅▋██▄▍▍ █▊▊▋▍ "▍▍▍▍_▊▋▄▆" ▊▉▍█▋██▍▍ ▆▇▍▇▉▉▌ ▇▋ ▊▇▄▅▌ ▊█▄▄▍ ▇▉▋█▌▉▍
▉▋▍ ▋▊█_▄▉▇▆▋▉▇█/▄▊▌▄ ▊▆▉▋▆▍ ▋▇ ▉▉▇ █▌▅▌▊▍▄ ▇▄▄▍▄▊██/▊█▊█▇▌▍
█▆▆ █▌▉_▄▍▆▌█▅▍ █▊ ▊▋_▉▍▇▋▄▋▆▍▆ ▌▆▆▋▅▆█
▉█▍▊▆ ▅▉▇▄▋▄▉ █▉▍ ▄▌ ▍▍▇▉▅▇█▍ ▉▉▊▋▋▉▋▆▋▇▍ ▋▄███▄▊▆
▊▋█▋ "▌▆▇▋▆▌'▍ ▇▄█▊ ▋▉▌▊▇▆ ▇▇▋" ▅▄▇▌█▉ ▍▉▉▄▌▆▄▌▌ █
▇▋█ ▇ ▌▄▌▆▇▋▌▉█.▇▄▇█▋▉▌▍▉▇ ▋▍▇▌▄▊▇▊▊▄▅▍ ▉▌▍▍ ▅▅▄ ▉▊▊█▄
▆▄█▌▇ ▇▄▉▌▇▋█ █▆▌▊ ▍▅▆█▆▇ ▉▉ █▋▇▊▌▄▊.▄█▆▊ ▄▅▉ ▇▇▄▉▅
▅▄▉▉▍ ▆█▉ ▉█▍▌▌█▍█▉▍▇, ▊▋▊ ▊▍ ▅▊▌█ █▌▌█ ▊▅█.
█▍▆████ ▅▊▉: █▋▉▆▅▋▇▋▍█ █▇ ▉█▆█▍▅▋▉▉ (▅▋▄█ █▇▉▍▅▇▉)
▄▇▊▍▆▅▇▄▉: ▋▋▋▍▅▇ ▌▅▍▉▆█▄▄ ▇▍ ▉▋▊ █▋▌▋ ▅▍▆▅ ▋▇▆▋▌▊▍▋▇▄▅
▇▅█▇ ▍▊▄▄▍ ▇▆▍ ▋█▊ ▊▋▌▍ ▉▄▌▅▄▋, ▋▋█▌▅▆▄ ▍ ██▉▍█▌▅ ▅▌▇ ▌██▉▇▅▍ ▅▍▇ █▄▉▍▇▊▆▌▉▆▌ ▄▆▄▇▄▅▋
▇▄▌█▆ █▇ ▊▇▅█ ▆▌ ▍▇▊█▇▌▊ ▉▌▉▆▉
▉█▋▅▇▅▇ ▍▆▌▌ ▉▍▌▄ ▉▋▆▄█▆▇ ▍▋▊▉
▍▅▉▅▉ █▉▍:▊▄▉█▍▍▅▆▊▅█
▅██▋▄ ▌▉▉.▌▆▅▉▄
▉▌▆▅█▄▆ █▍▄▆ ▄▄▇▇▄▇ ▍▊▌▆▉▅█ ▇▉▇▄▌▋▊█ ▉█▌▅▋▍▌▊▌▄▅
▇▆ ▋▍█ ▆█▉▇ ▉▋▌ ▄▊▋▋▍▋▆ ▉▅█▋█▉█▅▇▇ ▅▄▍ ▅▇▋▆ ▉▉▌▌█▆▇ ▍▌▊▌ █▍▅▍ ▍▊█▄▍ ▉▆█▍
▄▅▅ ▅█▋▊ ▊▍▉ ▅▇▌█ ▅▌▅▋▊▍▊, ▋▇▅ ▅▄▆▋▇ ▌▊▆▄:▍ ▋▆▅
▅█▄▍ ▅▉█▄ ▉▅▆▇▅▌▋ ▊▉▇▆ ▌▍▍ █▉▍▇▄▌ ▌▆▍▊
▌▋▍▇ ▊▍█'▅ ▌▅ ▊▍▍▇▅▄▍▊▉ ▉██▅▅▄█▄ ▋█▉▅ ▆▅ ▊█▇▌ ▇▍▉▌▅ ▍▌▇
█▉ ▉▆▄ ▍▆▋▇▅ ▇▊▌▆▅▍▋/▋▇▍▇ ▌▇▌▋▅▉ ▊▄▋▇█ ▇▋ ▊▌█▉▇▉ ▍▉ ▌▉▅▋▄▅▋
▉▄▇ ▊▌▄ ▊▆▊█▍█ ▉▊▊▋▌▇.
▄▊▇▉ ▅▇▋▄▋▄▋ ▋▄▅█▌▉ ▊▄▌ █▋▄▉ ▋▅█▅█ ▍▆▋
* ▆█▄██▍▍ ▄▍▋▇▉█▌█▋ ▍▊▄▍▋ ▄▌ ▇▊▋▋▄▌▉▊▋▌▄ ▉▉▅ ▄█▉▋▍▍▊█
█▄▍▊▊ ▆▋▍▆▄▅▊ ▊▋▋▆▌▆▇ ▅▉▋█ ▇▌▊▍▆█▆▋ ▄▅▌ ▆▊▌▇▅▇ ▌▌▉▍▇▍█ ▆▊▇▌▋▉▉▍ ▊▊ ▉▌▄▆▉█▄▆▄█▋▉
▄██▄ ▄▆ ▊▆▉▍▍ ▆▋▉▅▇▄ ▉▉ ▍▊▄ ▆▉▅▄ ▆██.
▊▆█▊▊▉▍█▊▉▆ ▇▇▄▊ ▍▋ ▉▍▇▋▆▉▍ ▌▍▄▅▍
▍▍▍▅▋▌▊█▉▄ ▍▅▍▇▍ "▇▊▆▍ ▊▊▇▉▆▅▋█▊▉" ▌▋▉▋█▋▉
▆▅▉▆▍ █▆█.▄▅▌▍▊▊▅▊▄▉▇▊█▊▄▍█ ▍▍▋ ▇█▇ █▉ █▄▉ ▊▋▊▅▅▄▆ ▍▍█▄▌▋▄█
▆▅ ▅▅▉ ▅▊▋ ▍▉█.▅▉▋▇▇▅▊▉▄▆▌ ▅█ ▇█▄, ▄▍▌ ▄▄▆ ▍▅▆▇▆█▇ ▄▄▋▉▊▌▋▅▉▅ ▌▆▅▄▅▇ ▍▊▋▅▄ ▉▋ ▄▉█▍▉▊ - ▅▍▍▅▅▍ ▆▅▊▌▉▊ ▌█▌▍▋ ▌▆ ▌▋▆▋▉▆▇█▆▊▄_▅▍▅█
█▅▍▅ ▍▄▌▅▇ ▌▆▉▆▅▍ ▄▋▉▊ ▋▍▍▆▇▍▌ █▄▉▉▊▉▉▇▄▋▄_▊▍▅▍ ▉▌ ▌▇▋ ▄▇▆▉▇ - ▊▆█ ▉█▌▊▅▄▉ ▋▊▌▅ ▊▄▌ ▅▆▄▄ ▉█ ▋▇▄▇ ▍▅▌▅▌▍▆▄▆▄▋/▉▌▇█▍▊▅▌▄▋▋ ▋▆▆▄█▆▄ ▌▊▆█ █▊▍ ▆▇▍▊▊▅'▇ ▍▄▉▇▋ ▊▊ ▌▉█▄▊▆ █▉▍ ▋█▍▍█▇▉▅▇ ▋█▊ ▆▅▅▇▉▇▋ ▅▊▊▋▊▇ ▍▄▋▇▌ ▇▉ ▊█▆▆▊▅ ▍▉▉ █▄▄▅ ▄▊█ ▆▊▅▍ ▊▇▆.▄▋▇▊▉▆▋▋▉▇▍▄▋▍▍
▋▇▇ ▆▊▅▊▋▉▇ ▇▊█▊▋█ ▌▆▅▅ █▇▉█▆▋