summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJoe Wilm <joe@jwilm.com>2018-03-09 13:49:47 -0800
committerJoe Wilm <jwilm@users.noreply.github.com>2018-04-02 10:10:22 -0700
commit98a1f7f508c0eb7f4614a380a79f2d07094ac8cb (patch)
tree3f14d4d206afe71e3cf1cf8e81c3becb71e000fb
parent9ee1cf2455d5512b087757e09451f9d122548da2 (diff)
Make tests compile again
Some tests are still not passing, though. A migration script was added to migrate serialized grids from pre-scrollback to the current format. The script is included with this commit for completeness, posterity, and as an example to be used in the future. A few tests in grid/tests.rs were removed due to becoming irrelevant.
-rwxr-xr-xscripts/migrate_ref_tests.rb21
-rw-r--r--src/grid/mod.rs2
-rw-r--r--src/grid/storage.rs14
-rw-r--r--src/grid/tests.rs79
-rw-r--r--src/term/mod.rs24
-rw-r--r--tests/ref/csi_rep/grid.json2
-rw-r--r--tests/ref/fish_cc/grid.json2
-rw-r--r--tests/ref/indexed_256_colors/grid.json2
-rw-r--r--tests/ref/issue_855/grid.json2
-rw-r--r--tests/ref/ll/grid.json2
-rw-r--r--tests/ref/newline_with_cursor_beyond_scroll_region/grid.json2
-rw-r--r--tests/ref/tab_rendering/grid.json2
-rw-r--r--tests/ref/tmux_git_log/grid.json2
-rw-r--r--tests/ref/tmux_htop/grid.json2
-rw-r--r--tests/ref/vim_24bitcolors_bce/grid.json2
-rw-r--r--tests/ref/vim_large_window_scroll/grid.json2
-rw-r--r--tests/ref/vim_simple_edit/grid.json2
-rw-r--r--tests/ref/vttest_cursor_movement_1/grid.json2
-rw-r--r--tests/ref/vttest_insert/grid.json2
-rw-r--r--tests/ref/vttest_origin_mode_1/grid.json2
-rw-r--r--tests/ref/vttest_origin_mode_2/grid.json2
-rw-r--r--tests/ref/vttest_scroll/grid.json2
-rw-r--r--tests/ref/vttest_tab_clear_set/grid.json2
-rw-r--r--tests/ref/zsh_tab_completion/grid.json2
24 files changed, 77 insertions, 101 deletions
diff --git a/scripts/migrate_ref_tests.rb b/scripts/migrate_ref_tests.rb
new file mode 100755
index 00000000..b6c89bfe
--- /dev/null
+++ b/scripts/migrate_ref_tests.rb
@@ -0,0 +1,21 @@
+#!/usr/bin/env ruby
+
+require 'json'
+
+Dir.glob('./tests/ref/**/grid.json').each do |path|
+ # Read contents
+ s = File.open(path) { |f| f.read }
+
+ # Parse
+ grid = JSON.parse(s)
+
+ # Check if it's already migrated / make this migration idempotent
+ next if grid['raw'][0][0].is_a? Array
+
+ # Transform
+ grid['raw'].reverse!
+ grid['raw'] = [grid['raw'], 0, grid['lines'] - 1]
+
+ # Write updated grid
+ File.open(path, 'w') { |f| f << JSON.generate(grid) }
+end
diff --git a/src/grid/mod.rs b/src/grid/mod.rs
index f1cec329..3495be1d 100644
--- a/src/grid/mod.rs
+++ b/src/grid/mod.rs
@@ -89,9 +89,11 @@ pub struct Grid<T> {
/// If the displayed region isn't at the bottom of the screen, it stays
/// stationary while more text is emitted. The scrolling implementation
/// updates this offset accordingly.
+ #[serde(default)]
display_offset: usize,
/// An limit on how far back it's possible to scroll
+ #[serde(default)]
scroll_limit: usize,
/// Selected region
diff --git a/src/grid/storage.rs b/src/grid/storage.rs
index 1588b006..0f1ba9c5 100644
--- a/src/grid/storage.rs
+++ b/src/grid/storage.rs
@@ -13,15 +13,25 @@
/// done so manually.
use std::ops::{Index, IndexMut};
-use index::Line;
+use index::{IndexRange, Line};
-#[derive(Clone, Debug, Deserialize, Serialize, Eq, PartialEq)]
+#[derive(Clone, Debug, Deserialize, Serialize)]
pub struct Storage<T> {
inner: Vec<T>,
zero: usize,
visible_lines: Line,
}
+impl<T: PartialEq> ::std::cmp::PartialEq for Storage<T> {
+ fn eq(&self, other: &Self) -> bool {
+ let mut equal = true;
+ for i in IndexRange(Line(0) .. self.visible_lines) {
+ equal = equal && (self[i] == other[i])
+ }
+ equal
+ }
+}
+
impl<T> Storage<T> {
#[inline]
pub fn with_capacity(cap: usize, lines: Line) -> Storage<T> {
diff --git a/src/grid/tests.rs b/src/grid/tests.rs
index 169cefa0..547fbcf9 100644
--- a/src/grid/tests.rs
+++ b/src/grid/tests.rs
@@ -17,78 +17,23 @@
use super::{Grid, BidirectionalIterator};
use index::{Point, Line, Column};
-#[test]
-fn grid_swap_lines_ok() {
- let mut grid = Grid::new(Line(10), Column(1), &0);
- info!("");
-
- // swap test ends
- grid[Line(0)][Column(0)] = 1;
- grid[Line(9)][Column(0)] = 2;
-
- assert_eq!(grid[Line(0)][Column(0)], 1);
- assert_eq!(grid[Line(9)][Column(0)], 2);
-
- grid.swap_lines(Line(0), Line(9));
-
- assert_eq!(grid[Line(0)][Column(0)], 2);
- assert_eq!(grid[Line(9)][Column(0)], 1);
-
- // swap test mid
- grid[Line(4)][Column(0)] = 1;
- grid[Line(5)][Column(0)] = 2;
-
- info!("grid: {:?}", grid);
-
- assert_eq!(grid[Line(4)][Column(0)], 1);
- assert_eq!(grid[Line(5)][Column(0)], 2);
-
- grid.swap_lines(Line(4), Line(5));
-
- info!("grid: {:?}", grid);
-
- assert_eq!(grid[Line(4)][Column(0)], 2);
- assert_eq!(grid[Line(5)][Column(0)], 1);
-}
-
-#[test]
-#[should_panic]
-fn grid_swap_lines_oob1() {
- let mut grid = Grid::new(Line(10), Column(1), &0);
- grid.swap_lines(Line(0), Line(10));
-}
-
-#[test]
-#[should_panic]
-fn grid_swap_lines_oob2() {
- let mut grid = Grid::new(Line(10), Column(1), &0);
- grid.swap_lines(Line(10), Line(0));
-}
-
-#[test]
-#[should_panic]
-fn grid_swap_lines_oob3() {
- let mut grid = Grid::new(Line(10), Column(1), &0);
- grid.swap_lines(Line(10), Line(10));
-}
-
// Scroll up moves lines upwards
#[test]
fn scroll_up() {
info!("");
- let mut grid = Grid::new(Line(10), Column(1), &0);
+ let mut grid = Grid::new(Line(10), Column(1), 0, 0);
for i in 0..10 {
grid[Line(i)][Column(0)] = i;
}
info!("grid: {:?}", grid);
- grid.scroll_up(Line(0)..Line(10), Line(2));
+ grid.scroll_up(&(Line(0)..Line(10)), Line(2));
info!("grid: {:?}", grid);
- let mut other = Grid::new(Line(10), Column(1), &9);
+ let mut other = Grid::new(Line(10), Column(1), 0, 9);
other[Line(0)][Column(0)] = 2;
other[Line(1)][Column(0)] = 3;
@@ -111,18 +56,18 @@ fn scroll_up() {
fn scroll_down() {
info!("");
- let mut grid = Grid::new(Line(10), Column(1), &0);
+ let mut grid = Grid::new(Line(10), Column(1), 0, 0);
for i in 0..10 {
grid[Line(i)][Column(0)] = i;
}
info!("grid: {:?}", grid);
- grid.scroll_down(Line(0)..Line(10), Line(2));
+ grid.scroll_down(&(Line(0)..Line(10)), Line(2));
info!("grid: {:?}", grid);
- let mut other = Grid::new(Line(10), Column(1), &9);
+ let mut other = Grid::new(Line(10), Column(1), 0, 9);
other[Line(0)][Column(0)] = 8;
other[Line(1)][Column(0)] = 9;
@@ -145,7 +90,7 @@ fn scroll_down() {
fn test_iter() {
info!("");
- let mut grid = Grid::new(Line(5), Column(5), &0);
+ let mut grid = Grid::new(Line(5), Column(5), 0, 0);
for i in 0..5 {
for j in 0..5 {
grid[Line(i)][Column(j)] = i*5 + j;
@@ -155,14 +100,14 @@ fn test_iter() {
info!("grid: {:?}", grid);
let mut iter = grid.iter_from(Point {
- line: Line(0),
+ line: 4,
col: Column(0),
});
assert_eq!(None, iter.prev());
assert_eq!(Some(&1), iter.next());
assert_eq!(Column(1), iter.cur.col);
- assert_eq!(Line(0), iter.cur.line);
+ assert_eq!(4, iter.cur.line);
assert_eq!(Some(&2), iter.next());
assert_eq!(Some(&3), iter.next());
@@ -171,16 +116,16 @@ fn test_iter() {
// test linewrapping
assert_eq!(Some(&5), iter.next());
assert_eq!(Column(0), iter.cur.col);
- assert_eq!(Line(1), iter.cur.line);
+ assert_eq!(3, iter.cur.line);
assert_eq!(Some(&4), iter.prev());
assert_eq!(Column(4), iter.cur.col);
- assert_eq!(Line(0), iter.cur.line);
+ assert_eq!(4, iter.cur.line);
// test that iter ends at end of grid
let mut final_iter = grid.iter_from(Point {
- line: Line(4),
+ line: 0,
col: Column(4),
});
assert_eq!(None, final_iter.next());
diff --git a/src/term/mod.rs b/src/term/mod.rs
index dee758ab..dcefac54 100644
--- a/src/term/mod.rs
+++ b/src/term/mod.rs
@@ -1996,7 +1996,7 @@ mod tests {
padding_y: 0.0,
};
let mut term = Term::new(&Default::default(), size);
- let mut grid: Grid<Cell> = Grid::new(Line(3), Column(5), &Cell::default());
+ let mut grid: Grid<Cell> = Grid::new(Line(3), Column(5), 0, Cell::default());
for i in 0..5 {
for j in 0..2 {
grid[Line(j)][Column(i)].c = 'a';
@@ -2013,18 +2013,18 @@ mod tests {
mem::swap(&mut term.semantic_escape_chars, &mut escape_chars);
{
- let selection = Selection::semantic(Point { line: Line(0), col: Column(1) }, &term);
- assert_eq!(term.string_from_selection(&selection.to_span(&term).unwrap()), "aa");
+ *term.selection_mut() = Some(Selection::semantic(Point { line: 2, col: Column(1) }, &term));
+ assert_eq!(term.selection_to_string(), Some(String::from("aa")));
}
{
- let selection = Selection::semantic(Point { line: Line(0), col: Column(4) }, &term);
- assert_eq!(term.string_from_selection(&selection.to_span(&term).unwrap()), "aaa");
+ *term.selection_mut() = Some(Selection::semantic(Point { line: 2, col: Column(4) }, &term));
+ assert_eq!(term.selection_to_string(), Some(String::from("aaa")));
}
{
- let selection = Selection::semantic(Point { line: Line(1), col: Column(1) }, &term);
- assert_eq!(term.string_from_selection(&selection.to_span(&term).unwrap()), "aaa");
+ *term.selection_mut() = Some(Selection::semantic(Point { line: 1, col: Column(1) }, &term));
+ assert_eq!(term.selection_to_string(), Some(String::from("aaa")));
}
}
@@ -2039,7 +2039,7 @@ mod tests {
padding_y: 0.0,
};
let mut term = Term::new(&Default::default(), size);
- let mut grid: Grid<Cell> = Grid::new(Line(1), Column(5), &Cell::default());
+ let mut grid: Grid<Cell> = Grid::new(Line(1), Column(5), 0, Cell::default());
for i in 0..5 {
grid[Line(0)][Column(i)].c = 'a';
}
@@ -2049,10 +2049,8 @@ mod tests {
mem::swap(&mut term.grid, &mut grid);
- let selection = Selection::lines(Point { line: Line(0), col: Column(3) });
- if let Some(span) = selection.to_span(&term) {
- assert_eq!(term.string_from_selection(&span), "\"aa\"a\n");
- }
+ *term.selection_mut() = Some(Selection::lines(Point { line: 0, col: Column(3) }));
+ assert_eq!(term.selection_to_string(), Some(String::from("\"aa\"a\n")));
}
/// Check that the grid can be serialized back and forth losslessly
@@ -2063,7 +2061,7 @@ mod tests {
fn grid_serde() {
let template = Cell::default();
- let grid = Grid::new(Line(24), Column(80), &template);
+ let grid: Grid<Cell> = Grid::new(Line(24), Column(80), 0, template);
let serialized = serde_json::to_string(&grid).expect("ser");
let deserialized = serde_json::from_str::<Grid<Cell>>(&serialized)
.expect("de");
diff --git a/tests/ref/csi_rep/grid.json b/tests/ref/csi_rep/grid.json
index 091f14bd..1194871d 100644
--- a/tests/ref/csi_rep/grid.json
+++ b/tests/ref/csi_rep/grid.json
@@ -1 +1 @@
-{"raw":[[{"c":"j","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"w","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"i","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"l","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"m","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"@","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"j","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"w","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"i","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"l","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"m","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"-","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"d","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"e","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"s","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"k","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"➜","fg":{"Named":"Green"},"bg":{"Named":"Background"},"flags":{"bits":2}},{"c":" ","fg":{"Named":"Green"},"bg":{"Named":"Background"},"flags":{"bits":2}},{"c":" ","fg":{"Named":"Green"},"bg":{"Named":"Background"},"flags":{"bits":2}},{"c":"~","fg":{"Named":"Cyan"},"bg":{"Named":"Background"},"flags":{"bits":2}},{"c":"/","fg":{"Named":"Cyan"},"bg":{"Named":"Background"},"flags":{"bits":2}},{"c":"c","fg":{"Named":"Cyan"},"bg":{"Named":"Background"},"flags":{"bits":2}},{"c":"o","fg":{"Named":"Cyan"},"bg":{"Named":"Background"},"flags":{"bits":2}},{"c":"d","fg":{"Named":"Cyan"},"bg":{"Named":"Background"},"flags":{"bits":2}},{"c":"e","fg":{"Named":"Cyan"},"bg":{"Named":"Background"},"flags":{"bits":2}},{"c":"/","fg":{"Named":"Cyan"},"bg":{"Named":"Background"},"flags":{"bits":2}},{"c":"a","fg":{"Named":"Cyan"},"bg":{"Named":"Background"},"flags":{"bits":2}},{"c":"l","fg":{"Named":"Cyan"},"bg":{"Named":"Background"},"flags":{"bits":2}},{"c":"a","fg":{"Named":"Cyan"},"bg":{"Named":"Background"},"flags":{"bits":2}},{"c":"c","fg":{"Named":"Cyan"},"bg":{"Named":"Background"},"flags":{"bits":2}},{"c":"r","fg":{"Named":"Cyan"},"bg":{"Named":"Background"},"flags":{"bits":2}},{"c":"i","fg":{"Named":"Cyan"},"bg":{"Named":"Background"},"flags":{"bits":2}},{"c":"t","fg":{"Named":"Cyan"},"bg":{"Named":"Background"},"flags":{"bits":2}},{"c":"t","fg":{"Named":"Cyan"},"bg":{"Named":"Background"},"flags":{"bits":2}},{"c":"y","fg":{"Named":"Cyan"},"bg":{"Named":"Background"},"flags":{"bits":2}},{"c":" ","fg":{"Named":"Cyan"},"bg":{"Named":"Background"},"flags":{"bits":2}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"p","fg":{"Named":"Magenta"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"r","fg":{"Named":"Magenta"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"i","fg":{"Named":"Magenta"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"n","fg":{"Named":"Magenta"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"t","fg":{"Named":"Magenta"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"f","fg":{"Named":"Magenta"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"\"","fg":{"Named":"Yellow"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"f","fg":{"Named":"Yellow"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"\\","fg":{"Named":"Yellow"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"e","fg":{"Named":"Yellow"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"[","fg":{"Named":"Yellow"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"1","fg":{"Named":"Yellow"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"0","fg":{"Named":"Yellow"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"b","fg":{"Named":"Yellow"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"\"","fg":{"Named":"Yellow"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}}],[{"c":"f","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"f","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"f","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"f","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"f","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"f","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"f","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"f","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"f","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"f","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"f","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"%","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":3}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":16}}],[{"c":"j","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"w","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"i","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"l","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"m","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"@","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"j","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"w","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"i","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"l","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"m","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"-","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"d","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"e","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"s","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"k","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":"➜","fg":{"Named":"Green"},"bg":{"Named":"Background"},"flags":{"bits":2}},{"c":" ","fg":{"Named":"Green"},"bg":{"Named":"Background"},"flags":{"bits":2}},{"c":" ","fg":{"Named":"Green"},"bg":{"Named":"Background"},"flags":{"bits":2}},{"c":"~","fg":{"Named":"Cyan"},"bg":{"Named":"Background"},"flags":{"bits":2}},{"c":"/","fg":{"Named":"Cyan"},"bg":{"Named":"Background"},"flags":{"bits":2}},{"c":"c","fg":{"Named":"Cyan"},"bg":{"Named":"Background"},"flags":{"bits":2}},{"c":"o","fg":{"Named":"Cyan"},"bg":{"Named":"Background"},"flags":{"bits":2}},{"c":"d","fg":{"Named":"Cyan"},"bg":{"Named":"Background"},"flags":{"bits":2}},{"c":"e","fg":{"Named":"Cyan"},"bg":{"Named":"Background"},"flags":{"bits":2}},{"c":"/","fg":{"Named":"Cyan"},"bg":{"Named":"Background"},"flags":{"bits":2}},{"c":"a","fg":{"Named":"Cyan"},"bg":{"Named":"Background"},"flags":{"bits":2}},{"c":"l","fg":{"Named":"Cyan"},"bg":{"Named":"Background"},"flags":{"bits":2}},{"c":"a","fg":{"Named":"Cyan"},"bg":{"Named":"Background"},"flags":{"bits":2}},{"c":"c","fg":{"Named":"Cyan"},"bg":{"Named":"Background"},"flags":{"bits":2}},{"c":"r","fg":{"Named":"Cyan"},"bg":{"Named":"Background"},"flags":{"bits":2}},{"c":"i","fg":{"Named":"Cyan"},"bg":{"Named":"Background"},"flags":{"bits":2}},{"c":"t","fg":{"Named":"Cyan"},"bg":{"Named":"Background"},"flags":{"bits":2}},{"c":"t","fg":{"Named":"Cyan"},"bg":{"Named":"Background"},"flags":{"bits":2}},{"c":"y","fg":{"Named":"Cyan"},"bg":{"Named":"Background"},"flags":{"bits":2}},{"c":" ","fg":{"Named":"Cyan"},"bg":{"Named":"Background"},"flags":{"bits":2}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}}],[{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}}],[{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"Background"},"flags":{"bits":0}},{"c":" ","fg":{"Named":"Foreground"},"bg":{"Named":"