Merge branch 'atree' into minefield-base-spell-fix

This commit is contained in:
hppeng 2022-07-13 22:11:35 -07:00
commit f4750a5c2b
102 changed files with 1497 additions and 1539 deletions

View file

@ -1407,7 +1407,7 @@
<a id="saveLink">savelink</a> <a id="saveLink">savelink</a>
</div> </div>
<script src="https://d3js.org/d3.v7.js"></script> <script src="https://d3js.org/d3.v7.js"></script>
<script type="text/javascript" src="../js/render_compute_graph.js"></script> <script type="text/javascript" src="../js/debug/render_compute_graph.js"></script>
</body> </body>
</html> </html>

File diff suppressed because one or more lines are too long

1399
builder/index_full.html Normal file

File diff suppressed because it is too large Load diff

View file

@ -76329,8 +76329,8 @@
"sdPct": 14, "sdPct": 14,
"mdPct": 14, "mdPct": 14,
"jh": 1, "jh": 1,
"mr": -1, "mr": -5,
"ms": -1 "ms": -5
}, },
{ {
"hprRaw": 50, "hprRaw": 50,
@ -76358,19 +76358,19 @@
"bonuses": [ "bonuses": [
{}, {},
{ {
"ms": 1, "ms": 5,
"dex": 2, "dex": 2,
"sdRaw": 15, "sdRaw": 15,
"mdRaw": 5 "mdRaw": 5
}, },
{ {
"ms": 1, "ms": 5,
"dex": 6, "dex": 6,
"sdRaw": 35, "sdRaw": 35,
"mdRaw": 10 "mdRaw": 10
}, },
{ {
"ms": 3, "ms": 15,
"dex": 20, "dex": 20,
"sdRaw": 65, "sdRaw": 65,
"mdRaw": 70 "mdRaw": 70
@ -76430,10 +76430,10 @@
{}, {},
{}, {},
{ {
"mr": 5, "mr": 25,
"sdPct": 75, "sdPct": 75,
"mdPct": 75, "mdPct": 75,
"ms": 5, "ms": 25,
"ls": 400, "ls": 400,
"hprRaw": 600 "hprRaw": 600
} }
@ -76558,24 +76558,24 @@
"bonuses": [ "bonuses": [
{}, {},
{ {
"mr": -1, "mr": -5,
"ms": 2, "ms": 10,
"sdRaw": 40, "sdRaw": 40,
"wDamPct": 5, "wDamPct": 5,
"tDamPct": 5, "tDamPct": 5,
"eDamPct": -34 "eDamPct": -34
}, },
{ {
"mr": -2, "mr": -10,
"ms": 4, "ms": 20,
"sdRaw": 115, "sdRaw": 115,
"wDamPct": 10, "wDamPct": 10,
"tDamPct": 10, "tDamPct": 10,
"eDamPct": -67 "eDamPct": -67
}, },
{ {
"mr": -3, "mr": -15,
"ms": 6, "ms": 30,
"sdRaw": 230, "sdRaw": 230,
"wDamPct": 32, "wDamPct": 32,
"tDamPct": 32, "tDamPct": 32,
@ -76612,7 +76612,7 @@
"spRegen": 15 "spRegen": 15
}, },
{ {
"mr": 2, "mr": 10,
"sdPct": 25, "sdPct": 25,
"mdPct": 25, "mdPct": 25,
"xpb": 50, "xpb": 50,
@ -76698,7 +76698,7 @@
"bonuses": [ "bonuses": [
{}, {},
{ {
"mr": 2, "mr": 10,
"xpb": 40, "xpb": 40,
"def": 25, "def": 25,
"fDamPct": 20, "fDamPct": 20,
@ -76842,21 +76842,21 @@
{}, {},
{ {
"hprPct": -10, "hprPct": -10,
"mr": 1, "mr": 5,
"sdPct": 6, "sdPct": 6,
"ref": 10, "ref": 10,
"thorns": 8 "thorns": 8
}, },
{ {
"hprPct": -20, "hprPct": -20,
"mr": 2, "mr": 10,
"sdPct": 14, "sdPct": 14,
"ref": 35, "ref": 35,
"thorns": 24 "thorns": 24
}, },
{ {
"hprPct": -30, "hprPct": -30,
"mr": 4, "mr": 20,
"sdPct": 30, "sdPct": 30,
"ref": 75, "ref": 75,
"thorns": 70 "thorns": 70
@ -76872,7 +76872,7 @@
{}, {},
{ {
"mdPct": 30, "mdPct": 30,
"ms": 2, "ms": 10,
"spd": 25, "spd": 25,
"spPct2": -40 "spPct2": -40
} }
@ -76896,46 +76896,46 @@
"lb": 5 "lb": 5
}, },
{ {
"mr": 1, "mr": 5,
"xpb": 10, "xpb": 10,
"lb": 10, "lb": 10,
"spRaw2": -1, "spRaw2": -5,
"hpBonus": 125 "hpBonus": 125
}, },
{ {
"mr": 1, "mr": 5,
"xpb": 15, "xpb": 15,
"lb": 15, "lb": 15,
"spRaw2": -1, "spRaw2": -5,
"hpBonus": 425 "hpBonus": 425
}, },
{ {
"mr": 2, "mr": 10,
"xpb": 35, "xpb": 35,
"lb": 35, "lb": 35,
"hpBonus": 1325, "hpBonus": 1325,
"spRaw2": -1, "spRaw2": -5,
"spRaw4": -1 "spRaw4": -5
}, },
{ {
"mr": 2, "mr": 10,
"xpb": 55, "xpb": 55,
"lb": 55, "lb": 55,
"hpBonus": 2575, "hpBonus": 2575,
"spRaw2": -1, "spRaw2": -5,
"spRaw4": -1 "spRaw4": -5
}, },
{ {
"mr": 3, "mr": 15,
"xpb": 80, "xpb": 80,
"lb": 80, "lb": 80,
"hpBonus": 4450, "hpBonus": 4450,
"spRaw1": -1, "spRaw1": -5,
"spRaw2": -1, "spRaw2": -5,
"spRaw4": -1 "spRaw4": -5
}, },
{ {
"mr": 4, "mr": 20,
"xpb": 100, "xpb": 100,
"lb": 100, "lb": 100,
"str": 15, "str": 15,
@ -76944,10 +76944,10 @@
"agi": 15, "agi": 15,
"def": 15, "def": 15,
"hpBonus": 8270, "hpBonus": 8270,
"spRaw1": -1, "spRaw1": -5,
"spRaw2": -1, "spRaw2": -5,
"spRaw3": -1, "spRaw3": -5,
"spRaw4": -1 "spRaw4": -5
} }
] ]
}, },
@ -77011,7 +77011,7 @@
"bonuses": [ "bonuses": [
{}, {},
{ {
"mr": 2, "mr": 10,
"sdPct": 15, "sdPct": 15,
"mdPct": -15, "mdPct": -15,
"sdRaw": 30, "sdRaw": 30,
@ -77279,7 +77279,7 @@
"bonuses": [ "bonuses": [
{}, {},
{ {
"mr": 2, "mr": 10,
"mdPct": -24, "mdPct": -24,
"int": 5, "int": 5,
"wDamPct": 10, "wDamPct": 10,
@ -77287,7 +77287,7 @@
"wDefPct": 16 "wDefPct": 16
}, },
{ {
"mr": 5, "mr": 25,
"mdPct": -54, "mdPct": -54,
"int": 15, "int": 15,
"wDamPct": 20, "wDamPct": 20,
@ -77295,7 +77295,7 @@
"wDefPct": 36 "wDefPct": 36
}, },
{ {
"mr": 8, "mr": 40,
"mdPct": -90, "mdPct": -90,
"int": 25, "int": 25,
"wDamPct": 40, "wDamPct": 40,
@ -77321,7 +77321,7 @@
"aDefPct": 20, "aDefPct": 20,
"tDefPct": 20, "tDefPct": 20,
"eDefPct": 20, "eDefPct": 20,
"ms": 1 "ms": 5
}, },
{ {
"xpb": 50, "xpb": 50,
@ -77331,7 +77331,7 @@
"aDefPct": 50, "aDefPct": 50,
"tDefPct": 50, "tDefPct": 50,
"eDefPct": 50, "eDefPct": 50,
"ms": 2 "ms": 10
}, },
{ {
"xpb": 75, "xpb": 75,
@ -77342,7 +77342,7 @@
"tDefPct": 100, "tDefPct": 100,
"eDefPct": 100, "eDefPct": 100,
"sdPct": 40, "sdPct": 40,
"ms": 6 "ms": 30
} }
] ]
}, },
@ -77356,7 +77356,7 @@
"bonuses": [ "bonuses": [
{}, {},
{ {
"mr": 1, "mr": 5,
"sdPct": -10, "sdPct": -10,
"mdPct": -15, "mdPct": -15,
"def": 7, "def": 7,
@ -77365,7 +77365,7 @@
"aDamPct": 15 "aDamPct": 15
}, },
{ {
"mr": 3, "mr": 15,
"sdPct": -20, "sdPct": -20,
"mdPct": -40, "mdPct": -40,
"def": 15, "def": 15,
@ -77374,7 +77374,7 @@
"aDamPct": 40 "aDamPct": 40
}, },
{ {
"mr": 6, "mr": 30,
"sdPct": -40, "sdPct": -40,
"mdPct": -85, "mdPct": -85,
"def": 40, "def": 40,
@ -77436,7 +77436,7 @@
"sdPct": -33, "sdPct": -33,
"mdPct": -33, "mdPct": -33,
"ls": 90, "ls": 90,
"ms": 2, "ms": 10,
"sdRaw": 160, "sdRaw": 160,
"mdRaw": 105, "mdRaw": 105,
"atkTier": 1 "atkTier": 1
@ -77457,7 +77457,7 @@
"hprRaw": 90 "hprRaw": 90
}, },
{ {
"mr": 5, "mr": 25,
"int": 20, "int": 20,
"def": 20, "def": 20,
"hpBonus": 1500, "hpBonus": 1500,
@ -77477,19 +77477,19 @@
"bonuses": [ "bonuses": [
{}, {},
{ {
"mr": 1, "mr": 5,
"xpb": 5, "xpb": 5,
"lb": 10, "lb": 10,
"hpBonus": 55 "hpBonus": 55
}, },
{ {
"mr": 2, "mr": 10,
"xpb": 10, "xpb": 10,
"lb": 25, "lb": 25,
"hpBonus": 170 "hpBonus": 170
}, },
{ {
"mr": 4, "mr": 20,
"xpb": 25, "xpb": 25,
"lb": 50, "lb": 50,
"int": 20, "int": 20,

File diff suppressed because one or more lines are too long

View file

@ -7,7 +7,7 @@ The game, of course
Additional Contributors, in no particular order: Additional Contributors, in no particular order:
- Kiocifer (Icons!) - Kiocifer (Icons!)
- IncinerateMe (helping transition to 1.20.3 / CI helper) - IncinerateMe (helping transition to 1.20.3 / atree / CI helper)
- puppy (dog) - puppy (dog)
- SockMower (ability tree encode/decode optimization) - SockMower (ability tree encode/decode optimization)
- ITechnically (coding emotional support / misc) - ITechnically (coding emotional support / misc)

View file

@ -67,6 +67,6 @@
<script type="text/javascript" src="/js/utils.js"></script> <script type="text/javascript" src="/js/utils.js"></script>
<script type="text/javascript" src="/js/loadheader.js"></script> <script type="text/javascript" src="/js/loadheader.js"></script>
<script type="text/javascript" src="/js/icons.js"></script> <script type="text/javascript" src="/js/icons.js"></script>
<script type="text/javascript" src="/js/dps_vis.js"></script> <script type="text/javascript" src="/js/debug/dps_vis.js"></script>
</body> </body>
</html> </html>

View file

@ -728,7 +728,7 @@ const atree_stats = new (class extends ComputeNode {
if (effect.slider) { if (effect.slider) {
if ('output' in effect) { // sometimes nodes will modify slider without having effect. if ('output' in effect) { // sometimes nodes will modify slider without having effect.
const slider_val = interactive_map.get(effect.slider_name).slider.value; const slider_val = interactive_map.get(effect.slider_name).slider.value;
let total = parseInt(slider_val) * effect.scaling[0]; let total = Math.floor(round_near(parseInt(slider_val) * effect.scaling[0]));
if ('max' in effect && total > effect.max) { total = effect.max; } if ('max' in effect && total > effect.max) { total = effect.max; }
if (Array.isArray(effect.output)) { if (Array.isArray(effect.output)) {
for (const output of effect.output) { for (const output of effect.output) {

View file

@ -1953,7 +1953,7 @@ const atrees = {
"parents": ["Cheaper Arrow Shield", "Cheaper Escape (2)"], "parents": ["Cheaper Arrow Shield", "Cheaper Escape (2)"],
"dependencies": ["Phantom Ray"], "dependencies": ["Phantom Ray"],
"blockers": [], "blockers": [],
"cost": 1, "cost": 2,
"display": { "display": {
"row": 34, "row": 34,
"col": 5, "col": 5,

File diff suppressed because one or more lines are too long

View file

@ -7,8 +7,6 @@ const url_tag = location.hash.slice(1);
const BUILD_VERSION = "7.0.19"; const BUILD_VERSION = "7.0.19";
let player_build;
// THIS IS SUPER DANGEROUS, WE SHOULD NOT BE KEEPING THIS IN SO MANY PLACES // THIS IS SUPER DANGEROUS, WE SHOULD NOT BE KEEPING THIS IN SO MANY PLACES
let editable_item_fields = [ "sdPct", "sdRaw", "mdPct", "mdRaw", "poison", let editable_item_fields = [ "sdPct", "sdRaw", "mdPct", "mdRaw", "poison",

View file

@ -1,3 +1,9 @@
let player_build;
let build_powders;
function getItemNameFromID(id) { return idMap.get(id); }
function getTomeNameFromID(id) { return tomeIDMap.get(id); }
function parsePowdering(powder_info) { function parsePowdering(powder_info) {
// TODO: Make this run in linear instead of quadratic time... ew // TODO: Make this run in linear instead of quadratic time... ew
let powdering = []; let powdering = [];
@ -124,7 +130,6 @@ function decodeBuild(url_tag) {
for (let i in tomes) { for (let i in tomes) {
let tome_str = info[1].charAt(i); let tome_str = info[1].charAt(i);
let tome_name = getTomeNameFromID(Base64.toInt(tome_str)); let tome_name = getTomeNameFromID(Base64.toInt(tome_str));
console.log(tome_name);
setValue(tomeInputs[i], tome_name); setValue(tomeInputs[i], tome_name);
} }
info[1] = info[1].slice(7); info[1] = info[1].slice(7);

View file

@ -1,18 +1,3 @@
let build_powders;
function getItemNameFromID(id) {
if (redirectMap.has(id)) {
return getItemNameFromID(redirectMap.get(id));
}
return idMap.get(id);
}
function getTomeNameFromID(id) {
if (tomeRedirectMap.has(id)) {
return getTomeNameFromID(tomeRedirectMap.get(id));
}
return tomeIDMap.get(id);
}
function populateBuildList() { function populateBuildList() {
const buildList = document.getElementById("build-choice"); const buildList = document.getElementById("build-choice");
@ -148,7 +133,6 @@ function toggle_tab(tab) {
} }
} }
function toggle_boost_tab(tab) { function toggle_boost_tab(tab) {
for (const i of skp_order) { for (const i of skp_order) {
document.querySelector("#"+i+"-boost").style.display = "none"; document.querySelector("#"+i+"-boost").style.display = "none";
@ -156,13 +140,10 @@ function toggle_boost_tab(tab) {
} }
document.querySelector("#"+tab+"-boost").style.display = ""; document.querySelector("#"+tab+"-boost").style.display = "";
document.getElementById(tab + "-boost-tab").classList.add("selected-btn"); document.getElementById(tab + "-boost-tab").classList.add("selected-btn");
} }
let tabs = ['overall-stats', 'offensive-stats', 'defensive-stats']; let tabs = ['overall-stats', 'offensive-stats', 'defensive-stats'];
function show_tab(tab) { function show_tab(tab) {
//console.log(itemFilters)
//hide all tabs, then show the tab of the div clicked and highlight the correct button //hide all tabs, then show the tab of the div clicked and highlight the correct button
for (const i in tabs) { for (const i in tabs) {
document.querySelector("#" + tabs[i]).style.display = "none"; document.querySelector("#" + tabs[i]).style.display = "none";
@ -319,51 +300,6 @@ function init_autocomplete() {
})); }));
} }
let filter_loc = ["filter1", "filter2", "filter3", "filter4"];
for (const i of filter_loc) {
dropdowns.set(i+"-choice", new autoComplete({
data: {
src: sq2ItemFilters,
},
selector: "#"+i+"-choice",
wrapper: false,
resultsList: {
tabSelect: true,
noResults: true,
class: "search-box dark-7 rounded-bottom px-2 fw-bold dark-shadow-sm",
element: (list, data) => {
// dynamic result loc
console.log(i);
list.style.zIndex = "100";
let position = document.getElementById(i+"-dropdown").getBoundingClientRect();
window_pos = document.getElementById("search-container").getBoundingClientRect();
list.style.top = position.bottom - window_pos.top + 5 +"px";
list.style.left = position.x - window_pos.x +"px";
list.style.width = position.width+"px";
if (!data.results.length) {
message = document.createElement('li');
message.classList.add('scaled-font');
message.textContent = "No filters found!";
list.prepend(message);
}
},
},
resultItem: {
class: "scaled-font search-item",
selected: "dark-5",
},
events: {
input: {
selection: (event) => {
if (event.detail.selection.value) {
event.target.value = event.detail.selection.value;
}
},
},
}
}));
}
} }
function collapse_element(elmnt) { function collapse_element(elmnt) {
@ -393,6 +329,7 @@ function init() {
for (const eq of equipment_keys) { for (const eq of equipment_keys) {
document.querySelector("#"+eq+"-tooltip").addEventListener("click", () => collapse_element('#'+eq+'-tooltip')); document.querySelector("#"+eq+"-tooltip").addEventListener("click", () => collapse_element('#'+eq+'-tooltip'));
} }
// Armor Specials
for (let i = 0; i < 5; ++i) { for (let i = 0; i < 5; ++i) {
const powder_special = powderSpecialStats[i]; const powder_special = powderSpecialStats[i];
const elem_name = damageClasses[i+1]; // skip neutral const elem_name = damageClasses[i+1]; // skip neutral
@ -436,6 +373,15 @@ function init() {
}); });
decodeBuild(url_tag); decodeBuild(url_tag);
builder_graph_init(); builder_graph_init();
for (const item_node of item_nodes) {
if (item_node.get_value() === null) {
// likely DB load failure...
if (confirm('One or more items failed to load correctly. This could be due to a corrupted build link, or (more likely) a database load failure. Would you like to reload?')) {
hardReload();
}
break;
}
}
} }
window.onerror = function(message, source, lineno, colno, error) { window.onerror = function(message, source, lineno, colno, error) {

View file

@ -192,7 +192,13 @@ class ItemInputNode extends InputNode {
for (const [i, x] of zip2(equipment_inputs, replace_items)) { setValue(i, x); } for (const [i, x] of zip2(equipment_inputs, replace_items)) { setValue(i, x); }
for (const node of item_nodes) { calcSchedule(node, 10); } for (const node of item_nodes) {
if (node !== this) {
// save a tiny bit of compute
calcSchedule(node, 10);
}
}
// Needed to push the weapon node's updates forward
return this.compute_func(input_map); return this.compute_func(input_map);
} }
return null; return null;
@ -1076,8 +1082,6 @@ function builder_graph_init() {
// These two are defined in `atree.js` // These two are defined in `atree.js`
atree_node.link_to(class_node, 'player-class'); atree_node.link_to(class_node, 'player-class');
atree_merge.link_to(class_node, 'player-class'); atree_merge.link_to(class_node, 'player-class');
atree_graph_creator = new AbilityTreeEnsureNodesNode(build_node, stat_agg_node)
.link_to(atree_collect_spells, 'spells');
atree_stats.link_to(build_node, 'build'); atree_stats.link_to(build_node, 'build');
stat_agg_node.link_to(atree_stats, 'atree-stats'); stat_agg_node.link_to(atree_stats, 'atree-stats');
@ -1092,6 +1096,9 @@ function builder_graph_init() {
armor_powder_node.update(); armor_powder_node.update();
level_input.update(); level_input.update();
atree_graph_creator = new AbilityTreeEnsureNodesNode(build_node, stat_agg_node)
.link_to(atree_collect_spells, 'spells');
// kinda janky, manually set atree and update. Some wasted compute here // kinda janky, manually set atree and update. Some wasted compute here
if (atree_data !== null && atree_node.value !== null) { // janky check if atree is valid if (atree_data !== null && atree_node.value !== null) { // janky check if atree is valid
const atree_state = atree_state_node.value; const atree_state = atree_state_node.value;

View file

@ -619,8 +619,15 @@ function addClasses(elem, classes) {
*/ */
async function hardReload() { async function hardReload() {
//https://gist.github.com/rmehner/b9a41d9f659c9b1c3340 //https://gist.github.com/rmehner/b9a41d9f659c9b1c3340
try {
const dbs = await window.indexedDB.databases(); const dbs = await window.indexedDB.databases();
await dbs.forEach(db => { window.indexedDB.deleteDatabase(db.name) }); await dbs.forEach(db => { window.indexedDB.deleteDatabase(db.name) });
} catch (error) {
// Hacky patch for firefox...
console.log(error);
const db_names = ['item_db', 'ing_db', 'map_db', 'tome_db'];
await db_names.forEach(db => { window.indexedDB.deleteDatabase(db) });
}
location.reload(true); location.reload(true);
} }

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.4 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.3 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.4 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.6 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.5 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.6 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.6 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.4 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.3 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.6 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.6 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.5 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.6 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.3 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.5 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.6 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.6 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.6 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.5 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.5 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.5 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.5 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.8 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.6 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.7 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.7 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.7 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.6 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.8 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.7 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.7 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.7 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.7 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.4 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.7 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.3 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.7 KiB

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.9 KiB

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6.1 KiB

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.8 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.7 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.7 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.8 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.7 KiB

After

Width:  |  Height:  |  Size: 1.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 7.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.2 KiB

After

Width:  |  Height:  |  Size: 1.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 478 B

After

Width:  |  Height:  |  Size: 261 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.7 KiB

After

Width:  |  Height:  |  Size: 1.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 595 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 470 B

After

Width:  |  Height:  |  Size: 238 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 358 B

After

Width:  |  Height:  |  Size: 297 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 7.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 5.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 6.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 35 KiB

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 7.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 323 B

After

Width:  |  Height:  |  Size: 250 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 5.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 21 KiB

After

Width:  |  Height:  |  Size: 8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 21 KiB

After

Width:  |  Height:  |  Size: 8.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 19 KiB

After

Width:  |  Height:  |  Size: 7.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 6 KiB

After

Width:  |  Height:  |  Size: 3.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 834 B

After

Width:  |  Height:  |  Size: 453 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 809 B

After

Width:  |  Height:  |  Size: 442 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 KiB

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 16 KiB

After

Width:  |  Height:  |  Size: 7.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 14 KiB

After

Width:  |  Height:  |  Size: 6.1 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 7.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 8.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 5.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 930 B

After

Width:  |  Height:  |  Size: 521 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.8 KiB

After

Width:  |  Height:  |  Size: 1.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 17 KiB

After

Width:  |  Height:  |  Size: 7.9 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 7.5 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 20 KiB

After

Width:  |  Height:  |  Size: 7.8 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 650 B

After

Width:  |  Height:  |  Size: 308 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 7.7 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 8.2 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 705 B

After

Width:  |  Height:  |  Size: 324 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 12 KiB

After

Width:  |  Height:  |  Size: 5.4 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 828 B

After

Width:  |  Height:  |  Size: 345 B

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