text:
openpyxl
========

A Python library to read/write Excel 2007 xlsx/xlsm files. Forked from https://bitbucket.org/ericgazoni/openpyxl

Rationale
-----------------

This is the fork of the original Bitbucket repository
https://bitbucket.org/ericgazoni/openpyxl by Eric Gazoni.

All credit goes to him and other people listed in the AUTHORS file.

This fork has been created to fix few issues (I prefer GitHub to Bitbucket):

* allow class-based tests to be discovered (by inheriting from unittest.TestCase)
* make Worksheet.get_highest_column() return integer rather than string in iter mode

repository: kamilgrymuza/openpyxl

repo_name: kamilgrymuza/openpyxl


text:
# PicardIterations_SAM-OpenMC_VHTR

## Purpose

This example demonstrates how to use WATTS to perform several iterations where SAM calculations are followed by OpenMC calculation and temperature/power information are exchanged until convergence.

## Code(s)

- SAM
- OpenMC

## Keywords

- Information transfer from SAM to OpenMC
- Picard iterations until convergence

## File descriptions

- [__watts_exec.py__](watts_exec.py): WATTS workflow for this example. This is the file to execute to run the problem described above.
- [__openmc_template__](openmc_template.py): Link to OpenMC templated model.

license: MIT

repository: watts-dev/watts

branch_name: refs/heads/development

extension: md

gha_language: Python

gha_license_id: MIT

license_type: permissive

repo_name: watts-dev/watts


text:
---
breadcrumbs:
- - /user-experience
  - User Experience
page_name: visual-design
title: Visual Design
---

[TOC]

## Design decisions: existing design

### Native style

While we're not a natively-themed application, we do wish to fit within the
operating system so that our app doesn't look out of place. This affects our
choices of:

*   interface icons (Vista makes frequent use of a certain back/forward
            icon style)
*   color
*   perceived depth, thickness
*   border shape, width and styling
*   font choice
*   blurriness - Windows tends to be more bitmappy than OS X, preferring
            to align everything along pixel boundaries - see the Cleartype vs.
            Quartz wars.

We use a non-native window frame with XP because the existing toolbar did not
support our tabs-on-top design - its color and gradients did not support the
overlay of interactive graphics, and it did not have the height we required. We
use the native frame on Vista, and intend to use the native frame on OS X.

The Windows XP UI consists of three layers - the first two consist of a blue
rubbery window frame, and a lighter tab frame. The buttons then stick out of
this frame, forming a third layer of depth. Each of these layers should each
feel no more than three or four pixels deep. We avoided going totally flat, as
this clashed with the host operating system and felt wrong - Chromium should
feel like a tactile object, not an abstract flat piece of software.

The Photoshop file used in the creation of the Chrome design can be found
attached at the bottom of this page.

#### Mathemagics

[](/user-experience/visual-design/mathemagics%20%281%29.png)

While the following is very rough because of gradual changes over time, rounding
errors, and because highlights and shadows make it hard to judge perceptual
distances, our design started based on the golden ratio. In the diagram above:
C = GR \* B
B = GR \* A
As the titlebar fills up with tabs, 'A' becomes the only grabbable area for the
window. This may prove to be too small for most users (user study results are
encouraging, however), so this may change.

#### Type

For all Chromium dialogs and toolbars, we use the system default font, which is
most frequently Tahoma 11px on Windows XP, or Segoe on Vista.
We make the URL larger (13px) to make it stand out more, and because the omnibox
is a large part of the product. This means that the baseline of the text in the
omnibox doesn't line up with the baselines of the text for the menus. Cry.

## Inspiration

While it doesn't show through today, we drew early inspiration from The
Designers Republic's work on the then-Psygnosis games WipEout and WipEout 2097;
the focus on blinding speed, and iconography that could be recognized instantly
even in the depths of your peripheral vision were both key attributes we
admired.

## Visual tests

All designs should be tested against default desktop backgrounds on XP and Vista
(with and without the default images), with multiple applications open
(typically multiple Windows Explorer windows and Office), at different screen
resolutions.

## Resources

[](/user-experience/visual-design/chrome_colorscheme.png)

repository: iridium-browser/iridium-browser

branch_name: refs/heads/master

repo_name: iridium-browser/iridium-browser


text:
## `zdesk incremental organizations`

Run incremental organizations subcommands

### Synopsis

    zdesk incremental organizations COMMAND[ ... ]

### Description

Run incremental organizations subcommands

repository: fprimex/zdesk-cli

branch_name: refs/heads/main

repo_name: fprimex/zdesk-cli


text:
# Alpheios WebExtension
[![JavaScript Style Guide](https://img.shields.io/badge/code_style-standard-brightgreen.svg)](https://standardjs.com)

## Overview

This repository contains the wrapper code for the Alpheios Reading Tools Browser
extensions for Chrome, Firefox and Safari.  The core functionality is provided
by the [`alpheios-components`](https://github.com/alpheios-project/alpheios-core/tree/master/packages/components)
library. The webextension wrapper code provides the implementation of the
[WebExtensions API](https://developer.mozilla.org/en-US/docs/Mozilla/Add-ons/WebExtensions/API) (Chrome/FF)
and [App Extension API](https://developer.apple.com/documentation/safariservices/safari_app_extensions) (Safari).

See also [DEVELOPMENT.md](DEVELOPMENT.md).

## Development and Reviewer Build Instructions

See [BUILD-FF-CHROME.md](BUILD-FF-CHROME.md) and [BUILD-SAFARI.md](BUILD-SAFARI.md).

## QA Build Instructions

1. merge the `master` branch to the `qa` branch and push to GitHub
2. GitHub Actions will execute the release.yml workflow to inject the build
number, install the `qa` branch of alpheios-components,
build the distribution files, and tag a pre-release in GitHub, with the dist files
packaged as a release artifact.
3. In the Safari build environment, pull the `qa` branch  and extract
the `dist.zip` from the Pre-release in GitHub to the local `dist` directory.
4. Create the Safari Package as described in BUILD-SAFARI.md

### Production Version and Build Instructions

1. merge the `master` branch to the `production` branch and push to GitHub
2. Update the version in `package.json` and `manifest.json`
3. Commit and push the change to GitHub
4. GitHub Actions will execute the release.yml workflow to inject the build
number, install the `production` branch of alpheios-components,
build the distribution files, and tag a pre-release in GitHub, with the dist files
packaged as a release artifact.
5. In the Safari build environment, pull the `production` branch  and extract
the `dist.zip` from the Pre-release in GitHub to the local `dist` directory.
6. Create the Safari Package as described in BUILD-SAFARI.md
7. When ready to release the code remove the "Pre-release" flag from the
Release in GitHub.
8. Merge the version and any other code changes from `production` back to `master`

license: ISC

repository: alpheios-project/webextension

gha_language: JavaScript

gha_license_id: ISC

repo_name: alpheios-project/webextension


text:
This is a WIP, and I'm learning Git/GitHub, so this might dis-appear at any moment, while I get comfortable with the whole thing. The code in reference is not by me.

# General Purpose GOAP

## Introduction
GOAP, or Goal Oriented Action Planning is a powerful tool to create game AI. For all the details I will refer to [Jeff Orkin's collection of articles](http://web.media.mit.edu/~jorkin/goap.html). But in short: GOAP will let computer controlled characters (NPCs) make action plans that can achieve desired goals. It will do so in a highly maintainable, easily extendible, highly modular fashion. Naive implementation of AI code will invariably blow up for any non trivial problem. GOAP on the other hand, is robust and is unlikely to buckle under large complexity. This software implements GOAP in the C programming language. It does so in a generic fashion, which makes it suitable for many projects.

## Basics of GOAP
Creating a plan for AI controlled entities comes down to the following steps:

1. Describe the repertoire of actions available.
2. Describe the current state of the world.
3. Describe the desired state of the world (goal).

To describe the actions, we specify:

* The preconditions for the action.
* The postconditions (effects) of the action.
* The cost of the action.

To describe world state, we define a set of world state atoms. Each atom has a tag, and a boolean value.

The planner will then be able to formulate a plan of actions that takes the world to the desired state, provided such a path exists. The plan formulated is guaranteed to be the lowest cost plan.

## Example Scenario

Let us consider a planner for an AI soldier. Our soldier can perform the following actions: scout, approach, aim, shoot, load, detonatebomb, flee.

* **scout** requires: *armedwithgun*. Effect: *enemyvisible*.
* **approach** requires: *enemyvisible*. Effect: *nearenemy*.
* **aim** requires: *enemyvisible* and *weaponloaded*. Effect: *enemylinedup*.
* **shoot** requires: *enemylinedup*. Effect: *!enemyalive*.
* **load** requires: *armedwithgun*. Effect: *weaponloaded*.
* **detonatebomb** requires: *armedwithbomb* and *nearenemy*. Effect: *!alive* and *!enemyalive*.
* **flee** requires: *enemyvisible*. Effect: *!nearenemy*.

Next, we will tell the planner that currently:
Enemy is not visible, we are armed with gun, our weapon is not loaded, enemy is not lined up, enemy is alive, we are armed with bomb, we are not near enemy, we are alive.

Then we tell our planner what our desired world looks like. We only care about one thing: our enemy is not alive.

With this, the planner can formulate a plan of actions to make this happen. For the moment, let's assume all our actions have the default cost 1 associated with it. This is what the planner will return to us:

                           ARMEDWITHGUN,enemyvisible,nearenemy,weaponloaded,enemylinedup,ENEMYALIVE,ARMEDWITHBOMB,ALIVE,
    0: scout               ARMEDWITHGUN,ENEMYVISIBLE,nearenemy,weaponloaded,enemylinedup,ENEMYALIVE,ARMEDWITHBOMB,ALIVE,
    1: approach            ARMEDWITHGUN,ENEMYVISIBLE,NEARENEMY,weaponloaded,enemylinedup,ENEMYALIVE,ARMEDWITHBOMB,ALIVE,
    2: detonatebomb        ARMEDWITHGUN,ENEMYVISIBLE,NEARENEMY,weaponloaded,enemylinedup,enemyalive,ARMEDWITHBOMB,alive,

Note: this notation uses lowercase if the condition is false, and uppercase if the condition is true.
The first line shows the current world state, and the last line the desired world state, with all intermediate states in between. The plan to execute is: (scout, approach, detonatebomb).

If we follow this plan, we have the unfortunate side effect that not only our enemy dies, but we die as well. This is easily solved by making detonatingbomb a higher cost action. But a more elegant approach would be to change our desired world state, and tell the planner that not only do we want our enemy dead, we want to ourselves alive. The planner will now create:

                           ARMEDWITHGUN,enemyvisible,nearenemy,weaponloaded,enemylinedup,ENEMYALIVE,ARMEDWITHBOMB,ALIVE,
    0: scout               ARMEDWITHGUN,ENEMYVISIBLE,nearenemy,weaponloaded,enemylinedup,ENEMYALIVE,ARMEDWITHBOMB,ALIVE,
    1: load                ARMEDWITHGUN,ENEMYVISIBLE,nearenemy,WEAPONLOADED,enemylinedup,ENEMYALIVE,ARMEDWITHBOMB,ALIVE,
    2: aim                 ARMEDWITHGUN,ENEMYVISIBLE,nearenemy,WEAPONLOADED,ENEMYLINEDUP,ENEMYALIVE,ARMEDWITHBOMB,ALIVE,
    3: shoot               ARMEDWITHGUN,ENEMYVISIBLE,nearenemy,WEAPONLOADED,ENEMYLINEDUP,enemyalive,ARMEDWITHBOMB,ALIVE,

## Example Code

The entire scenario described above is implemented succinctly in these few lines of code:

	#include "goappp.hpp"

	int __cdecl main ( ) {

		planner<std::uint16_t> ap;

		ap.action_ante ( "scout", "armedwithgun", true );
		ap.action_post ( "scout", "enemyvisible", true );

		ap.action_ante ( "approach", "enemyvisible", true );
		ap.action_post ( "approach", "nearenemy", true );

		ap.action_ante ( "aim", "enemyvisible", true );
		ap.action_ante ( "aim", "weaponloaded", true );
		ap.action_post ( "aim", "enemylinedup", true );

		ap.action_ante ( "shoot", "enemylinedup", true );
		ap.action_post ( "shoot", "enemyalive", false );

		ap.action_ante ( "load", "enemyvisible", true );
		ap.action_ante ( "load", "armedwithgun", true );
		ap.action_post ( "load", "weaponloaded", true );

		ap.action_ante ( "detonatebomb", "armedwithbomb", true );
		ap.action_ante ( "detonatebomb", "nearenemy", true );
		ap.action_post ( "detonatebomb", "alive", false );
		ap.action_post ( "detonatebomb", "enemyalive", false );

		ap.action_ante ( "flee", "enemyvisible", true );
		ap.action_post ( "flee", "nearenemy", false );

		ap.action_cost ( "detonatebomb", cost_type { 5 } );

		ap.current_world ( "enemyvisible", false );
		ap.current_world ( "armedwithgun", true );
		ap.current_world ( "weaponloaded", false );
		ap.current_world ( "enemylinedup", false );
		ap.current_world ( "enemyalive", true );
		ap.current_world ( "armedwithbomb", true );
		ap.current_world ( "nearenemy", false );
		ap.current_world ( "alive", true );

		ap.target_attributes ( "enemyalive", false );
		ap.target_attributes ( "alive", true );

		ap.print_actions ( );
		ap.print_current_world ( ); std::cout << nl;
		ap.print_target_attributes ( ); std::cout << nl;

		ap.plan ( );

		return 0;
	}

## Bugs

Always.

repository: degski/gpgoap

repo_name: degski/gpgoap


text:
---
title: comment
---

# `comment` ^^(Series)^^

{== Get or set user comments in time series ==}

## Syntax for Getting User Comments

    newComment = comment(x)

## Syntax for Assigning User Comments

    x = comment(x, newComment)
    x = comment(x, y)

## Input arguments

__`x`__ [ Series ]
>
> Time series
>

__`newComment`__ [ string ]
>
> Comment(s) that will be assigned
> to each column of the input time series, `x`.
>

__`y`__ [ Series ]
>
> Another time series whose column comment(s) will be
> assigned to the input time series, `x`.
>

## Output arguments

__`x`__ [ Series ]
>
> Output time series with new comments
> assigned.
>

__`newComment`__ [ cellstr ]
>
> Comments from the input time series, `x`.
>

## Options

__`zzz=default`__ [ zzz | ___ ]
>
> Description
>

## Description

Multivariate time series have comments assigned to
each of their columns. When assigning comments (using the syntax with two
input arguments) you can either pass in a char (text string) or a cellstr
(a cell array of strings). If `ColumnNames` is a char, then this same
comment will be assigned to all of the time series columns. If
`ColumnNames` is a cellstr, its size in the 2nd and higher dimensions
must match the size of the time series data; the individual strings from
`ColumnNames` will be then copied to the comments belonging to the
individual time series columns.

## Examples

```matlab
x = Series(1:2, rand(2, 2));
x = comment(x, "Comment")

x =

    Series object: 2-by-2
    Class of Data: double

    1: 0.28521     0.67068
    2: 0.91586     0.78549

    "Dates"    "Comment"    "Comment"

    User data: empty

x = comment(x, ["Comment 1", "Comment 2"])

x =
    Series object: 2-by-2
    Class of Data: double

    1: 0.28521     0.67068
    2: 0.91586     0.78549

    "Dates"    "Comment 1"    "Comment 2"

    User Data: empty
```

repository: IRIS-Solutions-Team/IRIS-Toolbox

branch_name: refs/heads/bleeding

gha_language: HTML

gha_license_id: NOASSERTION

repo_name: IRIS-Solutions-Team/IRIS-Toolbox


text:
# vue-ele-starter

> Quick start with Vue2 and ElementUI/MintUI

## Features

* Webpack@4
* Vue2 + vue-router(history mode / hash mode)
* Vue2 UI Framework - [ElementUI](https://github.com/ElemeFE/element) / [MintUI](https://github.com/ElemeFE/mint-ui)
* Postcss with postcss-salad
* ESLint - [Standard](https://github.com/feross/standard)(optional)
* 🆕 [vue-class-component](https://github.com/vuejs/vue-class-component)
* Unit tests with Karma + Mocha(optional)
* 🆕 router-based code splitting

## Get Started

```bash
vue init jikkai/vue-ele-starter vue-project
cd vue-project
npm i

npm start

npm run build
```

## License

[MIT](https://github.com/jikkai/vue-ele-starter/blob/master/LICENSE)


text:
---
title: Lesson Seven
layout: post
author: maximillian.iyengar
permalink: /lesson-seven/
source-id: 1_vnVF1cI8msjmeTFa4ibQv6FGD6mZDLmWSa64lJZ1Xg
published: true
---

**Multiple Sheets**

Starting Point - With a working, formatted spreadsheet, with multiple, not linked pages

Target - To have multiple sheets, interlinked, allowing my 'company' to enter data, and the computer to figure out the rest.

Completed? - Yes, I believe so. I have many sheets, and some formulas interlink them.

***
What did I do this lesson?

This lesson, I worked continued to work on my spreadsheet. I:

Created **multiple sheets**, such as 'Costs', ‘Profit and Loss’ and ‘Employees’ among others.

Entered **data into those sheets**, using formulas wherever possible. An example of this is where the 'Costs' sheet required to take into account the cost of the employees. I referenced it by using =Employees!F31.

Mixed up the **formating**. An example of this is changing the header to be taller and to have a solid block colour.

For homework, I:

Completed my spreadsheet, completing the formatting and data.

As I had surplus time, I decided to **work on my blog**. I abandoned the template in which our teacher gave us, replacing it with a slicker version. This post is the first example of this.

Despite **abandoning the template**, I still continued to use Google Docs. My reasoning is simple: if something were to go wrong with Github, I would still have a backup of all my blog posts. On the other hand, the convenience of markdown tempted me to finish my post in markdown, on Github. Gabriel - the tool which allows me to convert a Google Doc to markdown - is not compatible with certain things, such as lists, which I can now use, through **editing in markdown.**

I also made a minor change to my header: the .site-description is now black, not grey.

***
What effective strategies were used?

This lesson, I think I worked very effectively. I established a **good ratio of time between helping others, and working independently**. My focus was again very good, evidence for this is the amount of work accomplished in the lesson. As a large element of the lesson was largely dependent on **active listening**. I feel I didn't start the lesson with great skill in that area, but as the lesson continued, I feel I developed well. On top of this, my use of hotkeys, like RETURN and TAB, were good. My **resourcefulness also flourished**; I didn’t use Google much at all. The Sheets Help section provided me with resources, which were faster and more reliable than other sources.

***
What could I have improved?

Overall, this was a good and effective lesson. However, I could still work on my **perseverance skills**. Sheets is a complex and advanced program (when used properly) and I struggled to format my work nicely. However, when I got home, I **dedicated myself to the task**, and finally finished with the rewarding pleasure of something that I am proud of. Another skill which I could have improved would be my **making links** skill. I could have potentially found a similarity between what I was doing, and Python, making my work more efficient. However, overall this was a very **productive lesson**.

***
My Spreadsheet:

My spreadsheet can also be found here


text:
## jx get activities

alias for: jx pipeline activities

***Aliases**: act,activity*

### Usage

```
jx get activities
```

### Synopsis

alias for: jx pipeline activities

### Options

```
  -h, --help   help for activities
```

### SEE ALSO

* [jx get](jx_get.md)	 - Display one or more resources

###### Auto generated by spf13/cobra on 14-Sep-2022

repository: jenkins-x/jx

gha_language: Go

repo_name: jenkins-x/jx


text:
# CIRCOLONT project

Project under development related to the visual representation in processing.js of the audio generated with the max msp patch by 24 audio oscillators.

The frequency of the sinusoidals is represented as the frequency of generation of the related circle (one for each audio oscillator) in the processing.js code.

The repository also contains a 12 circle version and an initial D3.js patch version.

main files:

- circolont.pde     - processing.js patch
- a.txt             - text file updated for the real time data visualization
- trame_24.maxpat   - max patch

repository: commento/circolont

repo_name: commento/circolont


text:
# Change Log

## [v0.3.1](https://github.com/tweag/linear-base/tree/v0.3.1) (2023-03-17)

[Full Changelog](https://github.com/tweag/linear-base/compare/v0.3.0...v0.3.1)

### Headline changes

- Support for GHC 9.6 [\#438](https://github.com/tweag/linear-base/pull/438) ([aspiwack](https://github.com/aspiwack) & [guibou](https://github.com/guibou))

## [v0.3.0](https://github.com/tweag/linear-base/tree/v0.3.0) (2022-10-26)

[Full Changelog](https://github.com/tweag/linear-base/compare/v0.2.0...v0.3.0)

### Headline changes

- Support GHC 9.4 in addition to GHC 9.2 and GHC 9.0 (GHC 9.0 is no longer tested though) [\#427](https://github.com/tweag/linear-base/pull/427) ([matthew-healy](https://github.com/matthew-healy))
  - Update `shell.nix` to enable building with GHC 9.4.1 [\#429](https://github.com/tweag/linear-base/pull/429) ([matthew-healy](https://github.com/matthew-healy))
- Improvement of the resource-aware `IO` (`RIO`) monad's interface
  - Add some `Handle` operations to `RIO` [\#425](https://github.com/tweag/linear-base/pull/425) ([endgame](https://github.com/endgame))
  - The `Handle` type is now transparent, to make extensions of the API possible [\#428](https://github.com/tweag/linear-base/pull/428) ([aspiwack](https://github.com/aspiwack))

### Miscellaneous

- `Monoid (Maybe a)` requires only `Semigroup a`, not `Monoid a` [\#409](https://github.com/tweag/linear-base/pull/409) ([treeowl](https://github.com/treeowl))
- Add `evalState(T)` [\#411](https://github.com/tweag/linear-base/pull/411) ([andreasabel](https://github.com/andreasabel))
- Add `Movable` instances for several primitive types, as well as (non-linear) `Applicative`, `Foldable`, `Traversable` instances for `V`. [\#416](https://github.com/tweag/linear-base/pull/416) ([sellout](https://github.com/sellout))
- Fix typo in comment: resrouce -\> resource [\#421](https://github.com/tweag/linear-base/pull/421) ([undergroundquizscene](https://github.com/undergroundquizscene))
- Fix haddock hyperlink reference \(minor typo\) [\#420](https://github.com/tweag/linear-base/pull/420) ([undergroundquizscene](https://github.com/undergroundquizscene))
- Fix haddock links in `Data.Replicator.Linear` [\#423](https://github.com/tweag/linear-base/pull/423) ([undergroundquizscene](https://github.com/undergroundquizscene))
- Add `CONTRIBUTING.md` [\#426](https://github.com/tweag/linear-base/pull/426) ([tbagrel1](https://github.com/tbagrel1))

### Internal

- Upgrade GHC to 9.2 [\#414](https://github.com/tweag/linear-base/pull/414) ([aspiwack](https://github.com/aspiwack))
  - Don't use deprecated `testProperty` from tasty-hedgehog [\#415](https://github.com/tweag/linear-base/pull/415) ([aspiwack](https://github.com/aspiwack))

## [v0.2.0](https://github.com/tweag/linear-base/tree/v0.2.0) - 2022-03-25

[Full Changelog](https://github.com/tweag/linear-base/compare/v0.1.0...v0.2.0)

### Breaking changes

- Remove `Prelude.Linear.asTypeOf` [\#397](https://github.com/tweag/linear-base/pull/397) ([tbagrel1](https://github.com/tbagrel1))
- Add (and use) linear generics for many classes [\#394](https://github.com/tweag/linear-base/pull/394) ([treeowl](https://github.com/treeowl))
  - `Control.Functor.Linear.Functor`, `Data.Functor.Linear.{Functor,Applicative}` can now be derived through `Generically1`
  - `Data.Functor.Linear.Traversable` cannot be derived directly, but one can get `genericTraverse` for a `Generic1` type and then set `traverse = genericTraverse`
  - `Data.Unrestricted.Linear.{Consumable,Dupable,Movable}` can be derived through `Generically`
- Rework `Data.Monoid.Linear` module (affects linear `Semigroup` and `Monoid`) [\#314](https://github.com/tweag/linear-base/pull/314) ([sjoerdvisscher](https://github.com/sjoerdvisscher)), [\#381](https://github.com/tweag/linear-base/pull/381) ([tbagrel1](https://github.com/tbagrel1))
  - **Remove superclass constraint** on `Prelude.{Semigroup,Monoid}` for `Data.Monoid.Linear.{Semigroup,Monoid}`. `Data.Monoid.Linear.Monoid` instances now have to define `mempty`
  - Add many missing instances of `Data.Monoid.Linear.{Semigroup,Monoid}`
  - Deprecate `Data.Monoid.Linear.{Adding,Multiplying,getAdded,getMultiplied}` in favor of `Data.Semigroup.{Sum,Product}` (reexported under `Data.Monoid.Linear`) which now have linear `Semigroup` and `Monoid` instance. `Sum` and `Product` inner values can be extracted linearly with pattern-matching
  - **`Data.Semigroup` is no longer reexported as a whole under `Data.Monoid.Linear`**. Instead, only newtypes with a linear `Semigroup` instance are reexported
- Add missing fixity declarations for every operator of `linear-base` [\#386](https://github.com/tweag/linear-base/pull/386), ([tbagrel1](https://github.com/tbagrel1))
  - **Unchanged** (already present):
`infixr 0 $`, `infixl 1 &`, `infixr 2 ||`, `infixr 3 &&`,
 `infix 4 ==, /=, <=, <, >, >=`, `infixr 5 :>`
  - Add: ```infixr 0 `lseq`, `seq`, $!```
  - Add: `infixl 1 <&>, >>=, >>, &`
  - Add: `infixr 3 ***`
  - Add: ```infix 4 `compare`, `elem` ```
  - Add: `infixl 4 <$>, <$, <*>, <*`
  - Add: `infixr 5 ++`
  - Add: `infixr 6 <>`
  - Add: `infixl 6 +, -`
  - Add: `infixl 7 *`
  - Add: `infixr 9 #., .>, .`
  - **Previously missing fixity declarations defaulted to `infixl 9`, so some code might subtly break when updating to v0.2.0**
- Improve consistency of module naming [\#383](https://github.com/tweag/linear-base/pull/383) ([tbagrel1](https://github.com/tbagrel1))
  - **`System.IO.Resource` -> `System.IO.Resource.Linear`**
- Rework `Data.V.Linear` API [\#360](https://github.com/tweag/linear-base/pull/360) ([tbagrel1](https://github.com/tbagrel1))
  - `Data.Functor.Linear.Applicative` instance
  - `empty :: forall a. V 0 a`
  - `consume :: V 0 a %1 -> ()`
  - `cons :: forall n a. a %1 -> V (n - 1) a %1 -> V n a`
  - `uncons# :: 1 <= n => V n a %1 -> (# a, V (n - 1) a #)`
  - `uncons :: 1 <= n => V n a %1 -> (a, V (n - 1) a)`
  - `elim :: forall (n :: Nat) a b f. IsFunN a b f => f %1 -> V n a %1 -> b`
  - `make :: forall (n :: Nat) a f. IsFunN a (V n a) f => f`
  - `fromReplicator :: forall n a. KnownNat n => Replicator a %1 -> V n a`
  - `theLength :: forall n. KnownNat n => Prelude.Int`
  - **`dupV` is now part of `Data.V.Linear`:**

    `dupV :: forall n a. (KnownNat n, Dupable a) => a %1 -> V n a`
- Replace `dupV` in the minimal definition of `Data.Unrestricted.Linear.Dupable` with `dupR :: a %1 -> Replicator a` [\#360](https://github.com/tweag/linear-base/pull/360) ([tbagrel1](https://github.com/tbagrel1)) [\#365](https://github.com/tweag/linear-base/pull/365) ([facundominguez](https://github.com/facundominguez))
  - Introduce a new data type `Data.Replicator.Linear.Replicator`, which represents an infinite linear stream producing values of type `a`, with a stream-like API and a `Data.Functor.Linear.Applicative` instance
  - `Data.Unrestricted.Linear.Dupable` no longer depends on `Data.V.Linear`
  - Add `dup3`, `dup4`, `dup5`, `dup6`, `dup7`
- Polymorphise the type of some `Prelude.Linear` functions in levity and multiplicity [\#353](https://github.com/tweag/linear-base/pull/353) ([treeowl](https://github.com/treeowl))
  - `($) :: forall {rep} a (b :: TYPE rep) p q. (a %p-> b) %q-> a %p-> b`
  - `(&) :: forall {rep} a (b :: TYPE rep) p q. a %p-> (a %p-> b) %q-> b`
  - `($!) :: forall {rep} a (b :: TYPE rep) p q. (a %p-> b) %q-> a %p-> b`
  - `(.) :: forall {rep} b (c :: TYPE rep) a q m n. (b %1-> c) %q-> (a %1-> b) %m-> a %n-> c`
  - `forget :: forall {rep} a (b :: TYPE rep). (a %1-> b) %1-> a -> b`
- Multiplicity-polymorphise the type of some `Prelude.Linear` functions [\#319](https://github.com/tweag/linear-base/pull/319) ([aspiwack](https://github.com/aspiwack))
  - `id :: a %q-> a`
  - `const :: a %q-> b -> a`
  - `asTypeOf :: a %q-> a -> a`
  - `seq :: a -> b %q-> b`
  - `curry :: ((a, b) %p-> c) %q-> a %p-> b %p-> c`
  - `uncurry :: (a %p-> b %p-> c) %q-> (a, b) %p-> c`
  - `runIdentity' :: Identity a %p-> a`
- Remove `LinearArrow` usage in `Control.Optics.Linear` and use `FUN 'One` instead [\#308](https://github.com/tweag/linear-base/pull/308) ([sjoerdvisscher](https://github.com/sjoerdvisscher))
  - This change add a `Data.Profunctor.Linear.Profunctor` instance to `FUN 'One`
- Add `.Linear.Internal` modules (and only export parts of them in publicly-exposed `.Linear` modules) [\#306](https://github.com/tweag/linear-base/pull/306) ([ekmett](https://github.com/ekmett))
  - `Data.Array.Destination[.Internal]`
  - `Data.Array.Mutable.Linear[.Internal]`
  - `Data.HashMap.Mutable.Linear[.Internal]`
  - `Data.Set.Mutable.Linear[.Internal]`
  - `Data.Vector.Mutable.Linear[.Internal]`
  - `Foreign.Marshal.Pure[.Internal]`
  - `System.IO.Resource.Linear.[.Internal]`
  - This principle has been applied for newly-created modules in the subsequent PRs

### New additions

- Add `Data.Arity.Linear` module containing type-level helpers to deal with n-ary linear functions and type-level structural integers [\#390](https://github.com/tweag/linear-base/pull/390) ([aspiwack](https://github.com/aspiwack)), [\#391](https://github.com/tweag/linear-base/pull/391) ([tbagrel1](https://github.com/tbagrel1))
- Add `void` function to consume `Control.Functor.Linear.Functor` inner value [\#387](https://github.com/tweag/linear-base/pull/387) ([tbagrel1](https://github.com/tbagrel1))
- Add inspection tests to check inlining of `Data.Replicator.Linear.elim` and `Data.V.Linear.{make,elim}` [\#367](https://github.com/tweag/linear-base/pull/367) ([tbagrel1](https://github.com/tbagrel1))
- Add `genericTraverse` to `Data.Functor.Linear` for `Generics.Linear.Generic1` types [\#366](https://github.com/tweag/linear-base/pull/366) ([tbagrel1](https://github.com/tbagrel1)), [\#384](https://github.com/tweag/linear-base/pull/384) ([aspiwack](https://github.com/aspiwack)), [\#385](https://github.com/tweag/linear-base/pull/385) ([treeowl](https://github.com/treeowl))
- Add `Unsafe.toLinearN` (and narrow the scope of some coercions in the module internals) [\#346](https://github.com/tweag/linear-base/pull/346) ([treeowl](https://github.com/treeowl))
- Add newtype `Data.Unrestricted.Linear.AsMovable` to derive `Consumable` and `Dupable` from `Movable` [\#357](https://github.com/tweag/linear-base/pull/357) ([tbagrel1](https://github.com/tbagrel1))
- Add `Data.Unrestricted.Linear.{Consumable,Dupable,Moveable}` instances for all Word and Int types [\#352](https://github.com/tweag/linear-base/pull/352) ([googleson78](https://github.com/googleson78))
- Add benchmarks for `Data.HashMap.Linear` [\#338](https://github.com/tweag/linear-base/pull/338) ([utdemir](https://github.com/utdemir))
- Add benchmarks for `Data.Array.Mutable.Linear` [\#331](https://github.com/tweag/linear-base/pull/331) ([utdemir](https://github.com/utdemir))
- Add `Data.Unrestricted.Linear.{Consumable,Dupable}` instances to `Data.V.Linear.V` [\#324](https://github.com/tweag/linear-base/pull/324) ([aspiwack](https://github.com/aspiwack))
- Add `Data.Unrestricted.Linear.UrT`, the unrestricted monad transformer [\#304](https://github.com/tweag/linear-base/pull/304) ([sjoerdvisscher](https://github.com/sjoerdvisscher))

### Code improvements

- Add robustness improvements to `Data.Replicator.Linear.elim` and `Data.V.Linear.{make,elim}` [\#364](https://github.com/tweag/linear-base/pull/364) ([tbagrel1](https://github.com/tbagrel1)), [\#382](https://github.com/tweag/linear-base/pull/382) ([tbagrel1](https://github.com/tbagrel1)), [\#390](https://github.com/tweag/linear-base/pull/390) ([aspiwack](https://github.com/aspiwack)), [\#391](https://github.com/tweag/linear-base/pull/391) ([tbagrel1](https://github.com/tbagrel1))
- Add various optimisations for `Data.HashMap.Linear` [\#337](https://github.com/tweag/linear-base/pull/337) ([utdemir](https://github.com/utdemir))
- Improve `Data.Array.Mutable.Unlifted.Linear.map` performance [\#334](https://github.com/tweag/linear-base/pull/334) ([utdemir](https://github.com/utdemir))
- Remove one `unsafeCoerce` use from `Unsafe.coerce` [\#330](https://github.com/tweag/linear-base/pull/330) ([utdemir](https://github.com/utdemir))
- Improve `Prelude.Linear.seq` performance [\#329](https://github.com/tweag/linear-base/pull/329) ([utdemir](https://github.com/utdemir))
- Use safer `Vector.fromArray` in `Data.Array.Mutable.Linear` internals [\#327](https://github.com/tweag/linear-base/pull/327) ([utdemir](https://github.com/utdemir))
- Remove some incomplete pattern matches in `Data.List.Linear.{scanr,scanr1}` [\#299](https://github.com/tweag/linear-base/pull/299) ([utdemir](https://github.com/utdemir))

### CI/Tooling improvements

- Move CI tests from the `cabal` job to the `stack` job [\#398](https://github.com/tweag/linear-base/pull/398) ([tbagrel1](https://github.com/tbagrel1))
- Set warnings for `ghcide` in the cabal file [\#378](https://github.com/tweag/linear-base/pull/378) ([aspiwack](https://github.com/aspiwack))
- Disable all `hlint` hints except those related to pragmas [\#362](https://github.com/tweag/linear-base/pull/362) ([tbagrel1](https://github.com/tbagrel1))
- Enable doctesting through `cabal-docspec` in the CI [\#361](https://github.com/tweag/linear-base/pull/361) ([andreabedini](https://github.com/andreabedini))
- Format the codebase with [`ormolu`](https://github.com/tweag/ormolu) and add an `ormolu` check to the CI [\#355](https://github.com/tweag/linear-base/pull/355) ([tbagrel1](https://github.com/tbagrel1)), [\#358](https://github.com/tweag/linear-base/pull/358) ([tbagrel1](https://github.com/tbagrel1))
- CI and `shell.nix` overhaul [\#322](https://github.com/tweag/linear-base/pull/322) ([aspiwack](https://github.com/aspiwack)), [\#323](https://github.com/tweag/linear-base/pull/323) ([aspiwack](https://github.com/aspiwack)), [\#325](https://github.com/tweag/linear-base/pull/325) ([utdemir](https://github.com/utdemir)), [\#332](https://github.com/tweag/linear-base/pull/332) ([utdemir](https://github.com/utdemir)), [\#348](https://github.com/tweag/linear-base/pull/348) ([aspiwack](https://github.com/aspiwack)), [\#355](https://github.com/tweag/linear-base/pull/355) ([tbagrel1](https://github.com/tbagrel1)), [\#359](https://github.com/tweag/linear-base/pull/359) ([tbagrel1](https://github.com/tbagrel1))
  - Bump `nixpkgs` and `stackage` pinned versions to recent `unstable`/`nightly` ones
  - Move CI from *Buildkite* to *Github Action*
  - Automatically run the CI on pull requests
  - Add `stack`/Nix integration when `stack` is provided by `nix-shell`/`shell.nix` (the project still builds with a globally installed `stack`)
- Force resolving test dependencies on `cabal` [\#342](https://github.com/tweag/linear-base/pull/342) ([utdemir](https://github.com/utdemir))
- Remove `cabal-docspec` reference from `Setup.hs` [\#335](https://github.com/tweag/linear-base/pull/335) ([facundominguez](https://github.com/facundominguez))
- Start using upstream `nixpkgs` (instead of our own fork) [\#302](https://github.com/tweag/linear-base/pull/302) ([utdemir](https://github.com/utdemir))

### Documentation improvements

- Change relative links for absolute ones in the README [\#401](https://github.com/tweag/linear-base/pull/401) ([tbagrel1](https://github.com/tbagrel1))
- Add comparison table between `Prelude` and `Prelude.Linear` classes [\#368](https://github.com/tweag/linear-base/pull/368) ([tbagrel1](https://github.com/tbagrel1))
- Add Hackage and Stackage badges [\#336](https://github.com/tweag/linear-base/pull/336) ([utdemir](https://github.com/utdemir))
- Hide internal modules from `haddock` documentation [\#326](https://github.com/tweag/linear-base/pull/326) ([utdemir](https://github.com/utdemir)), [\#363](https://github.com/tweag/linear-base/pull/363) ([tbagrel1](https://github.com/tbagrel1))
- Add a note that GHC 9.2 fixes linear `case` in the user guide [\#320](https://github.com/tweag/linear-base/pull/320) ([monoidal](https://github.com/monoidal))
- Replace `#->` with `%1 ->` in the documentation [\#315](https://github.com/tweag/linear-base/pull/315) ([sjoerdvisscher](https://github.com/sjoerdvisscher))
- Fix rendering in `Data.Unrestricted.Linear.Ur` documentation [\#303](https://github.com/tweag/linear-base/pull/303) ([sjoerdvisscher](https://github.com/sjoerdvisscher))
- Fix a typo in `Data.Array.Mutable.Linear.unsafeWrite` documentation [\#301](https://github.com/tweag/linear-base/pull/301) ([daig](https://github.com/daig))
- Add a list of introduction talks about linear types in the README [\#300](https://github.com/tweag/linear-base/pull/300) ([aspiwack](https://github.com/aspiwack))
- Improve developer documentation in `Data.Array.Polarized.Push` [\#294](https://github.com/tweag/linear-base/pull/294) ([Divesh-Otwani](https://github.com/Divesh-Otwani))

## [v0.1.0](https://github.com/tweag/linear-base/tree/v0.1.0) - 2021-02-09

* Initial release

repository: tweag/linear-base

gha_language: Haskell

repo_name: tweag/linear-base


text:
# BtcZgen

Offline BIP32 HD wallet and vanity address generator for BitcoinZ.

Ported from [Hushgen.](https://github.com/TheTrunk/hushgen)

##Pre-requisites
* Golang 1.7.3 (altought lower versions may work)
* Git

##Build
~~~~
go get -u github.com/TheTrunk/btczgen
go build github.com/TheTrunk/btczgen
go build github.com/TheTrunk/btczgen/btczretrieve
~~~~

##Update an Existing Install
~~~~
go clean github.com/TheTrunk/btczgen
go build github.com/TheTrunk/btczgen
go build github.com/TheTrunk/btczgen/btczretrieve
~~~~

##Usage
To generate a wallet:
~~~~
btczgen [-test] [-n 1] [-o]

Options
-test generate testnet addresses
-n number of addresses to generate. Defaults to 1
-o enable output to file outputbtczgen.txt
~~~~

To retrieve addresses generated from your HD wallet:

~~~~
<<<<<<< HEAD >>>>>>>
btczretrieve -passphrase="your desired passphrase" [-test] [-n 1] [-match="t1yourdesiredstring"] [-i] [-o]

Options
-passphrase Passphrase for the wallet is REQUIRED between 128 and 512 bits
-test generate testnet addresses
-n number of addresses to retrieve. Defaults to 1
-match regex string to search for in the address
-i case insensitive string matching
-o enable output to file outputbtczretrieve.txt
~~~~

eg. Search case insensitive for a vanity address which starts with the string "t1jl"
~~~~
btczretrieve -passphrase="board start difference answer blossom roll powerful million rough butterfly bedroom beam" -match "t1jl" -i
~~~~

Note: The maximum number of addresses that can be searched given a wallet passphrase is restricted to 4,294,967,295 (unsigned 32 bit integer).

To import the private key into BitcoinZ:
~~~~
./zcash-cli importprivkey "private_key_from_btczgen"
~~~~
zcashd will automatically rescan the blockchain for transactions


text:
# BinarySearch

This is just a simple binary search algorithm written by myself.
Feel free to use the code however you'd like. It takes an array
as argument. To use it in your own C code, simply add:

#include "binsearch.h"

to the top of your code and include binsearch.h and binsearch.c
to your working directory

repository: brockboe/BinarySearch

repo_name: brockboe/BinarySearch


text:
Lucidly: A Dream Journal
===========
[![Code Climate](https://codeclimate.com/github/cpursley/Lucidly.png)](https://codeclimate.com/github/cpursley/Lucidly)

![lucid dream](http://nidradreaming.com/files/2012/12/things-to-do-in-lucid-dream.jpg)

*Image credit: [nidradreaming.com](http://nidradreaming.com/best-things-to-do-in-lucid-dream/)*

### What

A place to record and publish your lucid dreams.

### Where

Live at: [http://lucidly.herokuapp.com/](http://lucidly.herokuapp.com/)

### Technology

* Ruby on Rails 3.2.8
* PostgreSQL
* Heroku
* CoffeeScript
* Twitter Bootstrap (custom theme)
* Simple Form
* Acts as Taggable
* Active Record Reputation System
* Devise

### Contributors

* [Chase Pursley](http://github.com/cpursley) ~ (repo/app creator)
* [Al Snow](https://github.com/jasnow) ~ (snow-ize and several issues)
* [Ho-Sheng Hsiao](https://github.com/hosh) ~ (scope refactor recommendations)

### Getting started

Before using lucidly you will need Git, Ruby, Rails & PostgreSQL installed.

```
git clone git@github.com:cpursley/Lucidly.git
cd lucidly
bundle install
rake db:setup
--or--
rake db:create
rake db:migrate
rake db:seed
-- --
rails server
```
Open [http://localhost:3000](http://localhost:3000) in your browser.

### License

The MIT License (MIT)

Copyright (c) 2013 Chase Pursley (http://www.chasepursley.com/)

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the “Software”), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

 IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

repository: jasnow/Lucidly

repo_name: jasnow/Lucidly


text:
# Syntax

Plume uses Markdown for document edition. It supports standard Markdown syntax along with some additional features
coming from the [PHP-Markdown][2] implementation.

If you are not familiar with Markdown or just want a little reminder about its syntax, please visit the official
[Markdown Syntax Documentation][1].

(?) A [Markdown Cheat Sheet](/help:MarkdownCheatSheet) is also available when editing documents.

## Additional features

### Extra syntax

When rendering documents, you can use some PHP-Markdown style syntaxes.

#### Strikethrough

Double `~` characters will be treated as delimiters for strikethrough texts, e.g. `this is ~~good~~ bad`.

#### Superscript

A simple `^` character will handle superscript, requiring complex values to be enclosed in parenthesis, e.g.
`this is the 2^(nd) time`

### URL auto-linking

Any Email address and URLs beginning with HTTP(S) and FTP protocols or with `www.` will automatically be turned into
HTML links.

### Fenced code blocks

Along with the traditional Markdown code block syntax using indented text, you can use 3 or more `~` or `backticks` to
handle PHP-Markdown style fenced code blocks.

If you want the code to be highlighted, an optional language name should be appended to the opening fence.

### Tables

For tables handling, which isn't part of the standard Markdown, you can use the [PHP-Markdown tables][3] syntax.

[1]: http://daringfireball.net/projects/markdown/syntax
[2]: http://michelf.ca/projects/php-markdown/
[3]: http://michelf.ca/projects/php-markdown/extra/#table

repository: vbatoufflet/plume

repo_name: vbatoufflet/plume


text:
Getting Started
===============

```bash
npm install -g cordova ionic
```

Running locally
===============
To run locally, start up a local web+LiveReload server.

```bash
ionic serve
```

repository: weerd/PocketBarry-Ionic

repo_name: weerd/PocketBarry-Ionic


text:
---
description: 'Learn about Bancor, build on the protocol, and engage with the community.'
---

# Resources

* \*\*\*\*[**Bancor App**](https://www.bancor.network/): A simple, full-featured interface where you can swap tokens, provide liquidity, manage liquidity positions and view market data.
* \*\*\*\*[**Bancor Telegram Group**](https://t.me/bancor): Chat with the Bancor community about the project
* [**Bancor Liquidity Providers Telegram**](https://t.me/bancortraders): Chat with LPs about staking in Bancor pools
* \*\*\*\*[**Bancor Developers Telegram**](https://t.me/BancorDevelopers): Chat with the Bancor developer community about integrations or ask technical questions
* \*\*\*\*[**Bancor Discord**](https://discord.com/invite/pe7EfaR)**:** Official Bancor chat on Discord
* \*\*\*\*[**Bancor Blog**](https://blog.bancor.network/): Protocol updates & new features
* \*\*\*\*[**Bancor Governance**](http://gov.bancor.network/)**:** Discussion forum for protocol upgrades & proposals
* [**BancorDAO Voting Portal**](https://vote.bancor.network/)**:** Vote on Bancor Improvement Proposals \(BIPs\)
* [**Bancor Dune Analytics**](https://duneanalytics.com/Bancor/bancor_1)**:** View network statistics
* [**BNTee.shop**](http://bntee.shop/): Bancor t-shirts based on Bonding Curves \($BNTEE tokens\)

### Videos

_**Staking:**_

* [How to Stake Tokens & Earn on Bancor](https://www.youtube.com/watch?v=vpNuyjS9grM&t=3s) \(DeFi Alliance Demo\)
* [How to Stake AXS on Bancor](https://www.youtube.com/watch?v=2Mz7wh3hm8Y) **\(**Jeffrey Zirlin - Axie Infinity\)
* [How to Earn Rewards Without the Risk of Impermanent Loss!](https://youtu.be/Xal2xVUoW1U?t=203) \(Breakout Solutions\)
* [Bancor Platform Overview](https://www.youtube.com/watch?v=sdd5TToLv9o) \(Blocks of Finance\)
* [Staking Tutorial ](https://youtu.be/3P4vKIHcdas)\(CryptoOneShop\)

_**Protocol:**_

* [Bancor: the Crypto Passive Income Powerhouse](https://www.youtube.com/watch?v=4clRscC9BR0&t=2s) \(DeFi Donut\)
* [Lazy Yield Hacking with Bancor](https://www.youtube.com/watch?v=8YpNh27HD0Y) \(Amadeo Brands\)
* [Bancor Protocol ELI5](https://www.youtube.com/watch?v=MQa8_4s9wMo) \(MBR\)
* [How Bancor's Impermanent Loss Protection Works](https://www.youtube.com/watch?v=6YA61LeJqE8) \(Economics Design\)
* [Bancor Protocol overview ](https://twitter.com/Bancor/status/1359455683939356674?s=20)\(DeFiFrog**\)**
* \*\*\*\*[Single-sided liquidity](https://twitter.com/DeFiFrog/status/1368623215673626625?s=20) \(DeFiFrog\)
* [BNT Liquidity Mining](https://www.youtube.com/watch?v=X22Dr2zYW2M) \(DeFiFrog\)
* [Bancor Vortex ](https://www.youtube.com/watch?v=SbUqcbNqQ-Y)\(MBR\)
* [vBNT Burning](https://www.youtube.com/watch?v=cWg-oTm5OM8&t=3s) \(Taiki Maeda\)

_**Trading:**_

* [How to Connect Your Wallet on Bancor](https://www.youtube.com/watch?v=-bqI7IsC6c0&t=117s)

### Written Guides

_**Staking:**_

* [Quickstart Guide: Bancor Staking Guide](https://blog.bancor.network/how-to-stake-liquidity-earn-fees-on-bancor-bff8369274a1)
* [In-depth Guide: How to Stake on Bancor](https://medium.com/harvest-finance/how-to-stake-farm-on-bancor-in-a-single-sided-manner-in-depth-tutorial-ff573e0756de) \(Harvest Finance\)
* [How Bancor Staking Works](https://blog.bancor.network/bancor-v2-1-staking-for-defi-dummies-f104a6a8281e)
* [How to Farm on Bancor \(Chain Bulletin\)](https://chainbulletin.com/how-to-farm-bnt-on-bancor-the-simple-guide/)
* [How to Earn & Re-Stake BNT Rewards](https://blog.bancor.network/how-to-stake-bnt-liquidity-mining-rewards-compound-yield-2ad40b45c002)
* [Using Bancor Vortex](https://blog.bancor.network/using-bancor-vortex-46974a1c14f9)

_**Governance:**_

* [How to Submit Proposals in the BancorDAO](https://blog.bancor.network/a-guide-to-bancordao-due-process-d958ceade75)
* [How to Whitelist a Token in Bancor v2.1](https://bancor.medium.com/how-to-whitelist-a-token-on-bancor-v2-1-c867b82675d4)
* [BancorDAO Template for Token Whitelist Proposals](https://docs.google.com/document/d/1PE39vDz6uefxvibEtESGTdU2pUnqfmT0wpiqZscbf3w/edit)
* [How to Delegate Voting Power in the BancorDAO](https://blog.bancor.network/how-to-delegate-voting-power-in-the-bancordao-b82df46be416)

_**Trading:**_

* [How to Buy & Earn ETH on Bancor](https://medium.com/@definavigator/how-to-buy-and-earn-eth-on-bancor-e156c67f32ab)
* [How to Perform Gas-Free Limit Orders on Bancor](https://blog.bancor.network/guide-to-bancor-limit-orders-3021219ed2f1)

### Protocol Mechanics

* [Proposing Bancor v2.1: Single-Sided AMMs with Impermanent Loss Protection](https://blog.bancor.network/proposing-bancor-v2-1-single-sided-amm-with-elastic-bnt-supply-bcac9fe655b)
* [Deribit: BNT Insights Market Research](https://insights.deribit.com/market-research/bancor-the-world-token/)
* [Comparing Bancor & Uniswap Staking ROI](https://twitter.com/korpi87/status/1409449804703440897?s=20)
* [vBNT Burning](https://blog.bancor.network/vbnt-burning-is-live-cd814c2b07fa)
* [Understanding BNT Supply](https://korpi.medium.com/understand-bancor-the-truth-about-bnt-supply-and-why-bnt-market-cap-is-overstated-671d3f680465)
* **Twitter threads:**
  * [Wangarian](https://twitter.com/Wangarian1/status/1367087459255738370)
  * [Korpi](https://twitter.com/korpi87/status/1366483481367351300?s=20)
  * [CryptoDragonite](https://twitter.com/CryptoDragonite/status/1359299751921938436?s=20)
  * [Fiskantes](https://twitter.com/Fiskantes/status/1368660305153318912?s=20)

_**Progress Reports**:_

* Weekly updates on[ blog.bancor.network](https://blog.bancor.network/)
* [April 2021](https://blog.bancor.network/bancor-progress-update-april-2021-35fb95656267)
* [March 2021](https://blog.bancor.network/bancor-progress-update-march-2020-73007ed5a03a)
* [February 2021](https://blog.bancor.network/bancor-monthly-progress-update-february-2021-685e174f6537)
* [January 2021](https://blog.bancor.network/bancor-v2-1-protocol-health-report-january-2020-83338c904de0)

### Analytics

* [Bancor Dune Analytics](https://duneanalytics.com/Bancor/bancor_1)
* [Bancor daily fees \(Cryptofees.info\)](https://cryptofees.info/)
* Twitter bots: [BancorVortex](https://twitter.com/BancorVortex) \(pool space openings\) + [BNTVortex](https://twitter.com/BntVortex) \(network stats\)
* [Bancor APIs](https://docs.bancor.network/rest-api/api-reference)
* [Token Terminal](https://www.tokenterminal.com/terminal/projects/bancor)

### Papers:

* [Bancor v2.1 Economic Analysis](https://drive.google.com/file/d/1en044m2wchn85aQBcoVx2elmxEYd5kEA/view) \([TopazeBlue](https://topaze.blue/)\)
* [Bancor v2.1 Protocol Health Report \(January 2021\)](https://blog.bancor.network/bancor-v2-1-protocol-health-report-january-2020-83338c904de0)
* [Bancor Whitepaper](https://storage.googleapis.com/website-bancor/2018/04/01ba8253-bancor_protocol_whitepaper_en.pdf) \(2018\)

### Podcasts

* [Cryptotesters](https://twitter.com/cryptotesters/status/1372606017477955592?s=20)
* [Blockcrunch](https://podcasts.apple.com/us/podcast/alpha-leak-how-bancor-solves-impermanent-loss-nate/id1350649166?i=1000513405411)
* [DeFiYield](https://www.youtube.com/watch?v=U_I1vWvI9r4&t=239s)

repository: kyriediculous/docs

repo_name: kyriediculous/docs


text:
[![](https://jitpack.io/v/wwdablu/lottiebottomnav.svg)](https://jitpack.io/#wwdablu/lottiebottomnav)

# LottieBottomNav
Library which allows to create a bottom navigation view allowing the usage of Lottie views.

## Gradle
```
allprojects {
    repositories {
        maven { url 'https://jitpack.io' }
    }
}

dependencies {
    implementation 'com.github.wwdablu:lottiebottomnav:x.y.z'
}
```

## Declare in XML
```
<com.wwdablu.soumya.lottiebottomnav.LottieBottomNav
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:id="@+id/bottom_nav"
    android:layout_alignParentBottom="true"
    android:background="@android:color/white"
    app:menu_selected_height="48dp"
    app:menu_selected_width="48dp"
    app:menu_unselected_height="40dp"
    app:menu_unselected_width="40dp"
    app:menu_text_show_on_unselected="true"
    />
```
This would create the LottieBottomNav control. Using it the width and height of the menu items in selected and unselected state of the menu item can be controlled. Also as to whether the text for the menu item will be used for the unselected items can also be controlled using the property `menu_text_show_on_unselected`.

## Creating Menu Items
The LottieBottomNav contains an array of menu items. The process to create a menu item is:
```
MenuItem homeItem = MenuItemBuilder.create("Dashboard", "home.json", MenuItem.Source.Assets, "dashboard")
    .selectedTextColor(Color.BLUE)
    .unSelectedTextColor(Color.RED)
    .pausedProgress(100)
    .autoPlay(false)
    .loop(false)
    .build();
```
This allows us to create a menu with both the selected and unselected states. The other way to create is from an existing mmenu item object and then modifying any existing property. `Note: Only tag property is not copied`.
```
MenuItem settings = MenuItemBuilder.createFrom(homeItem)
    .menuTitle("Settings")
    .selectedLottieName("settings.json")
    .unSelectedLottieName("settings.json")
    .tag("settings")
    .build();
```
In the above approach properties like `textColor`, `autoPlay` and `loop` are of the same value from which it is created.

## Update a particular menu item
To update a particular menu item with different properties of the menu item, the following approach is needed.
```
MenuItem cupidMessage = MenuItemBuilder.createFrom(bottomNav.getMenuItemFor(index))
    .selectedLottieName("message_cupid.json")
    .tag("cupid")
    .build();

bottomNav.updateMenuItemFor(index, cupidMessage);
```
This would change the lottie used for the menu item in `index` and update it to use cupid lottie.

## Callback
The following callbacks are provided for each of the menu items.
```
void onMenuSelected(int oldIndex, int newIndex, MenuItem menuItem);
void onAnimationStart(int index, MenuItem menuItem);
void onAnimationEnd(int index, MenuItem menuItem);
void onAnimationCancel(int index, MenuItem menuItem);
```
It should be noted that if `autoPlay` is enabled, then it must be noted that `onMenuSelected` will call `onAnimationStart` immediately. So it is better to perform quick tasks in these callback and move heavy tasks in separate threads.

## Demo
The demo video is present inside the demo folder. The GIF version is shown below.

![Demo](https://github.com/wwdablu/LottieBottomNav/blob/master/demo/demo_1.0.0.gif)

**Lottie Files**
The lottie files used have been taken from `https://www.lottiefiles.com/`. The lotties files have been developed by the respective developers and I have not created them.


text:
 object-detection

use the tensorflow object detection api, for the model starting to train 100 images with trn_size: around 90 images and test_size: around images

the accuracy is on the way for improving
- Traine the model on the AWS P3 instance for 15k steps within 1 hour and the loss is below the range of 0.8-0.9.

Transfer the XML file to POSCAL VOC file and get model runs on the fastai framework based on object detection methods, get stuck on
`ValueError: Expected more than 1 value per channel when training, got input size torch.Size([1, 1024])`

Resource:
-annotation tool:

https://github.com/tzutalin/labelImg

https://github.com/wkentaro/labelme

http://openaccess.thecvf.com/content_ECCV_2018/papers/NIKITA_DVORNIK_Modeling_Visual_Context_ECCV_2018_paper.pdf

https://github.com/tensorflow/models/blob/master/research/object_detection/g3doc/detection_model_zoo.md

repository: Chloejay/object-detection

repo_name: Chloejay/object-detection


text:
# friday-pgm

This package offers native haskell parsing for a subset of the .pgm spec.

It will work with files where in the Raw PGM format, that have a maxVal of 255.

# Why

Setting up `friday-devil` can be a pain - preferable to have a native haskell parser for ease of portability.

# Example

```haskell
import Vision.Image.Storage.PGM (load, save)

main = do
  img <- load "example-images/my-img.pgm"
  -- use as you would any other Grey image in the friday library
  -- once done, save..
  save "example-images/my-updated-img.pgm" updatedImage
```

repository: hughfdjackson/friday-pgm

repo_name: hughfdjackson/friday-pgm


text:
# Recipe Gen

## Description

A tool to generate cook books using a basic XML recipe format described below.

## Dependencies

+	pdflatex
	+	`apt-get install texlive-latex-extra`
+	[texml](http://getfo.org/texml/)
	+	Download and install from source

## Installation

	git clone <REPO URL>
	cd recipe-gen
	sudo make install

## Usage

	recipe-gen <Path to RECIPE-BOOK.xml>

## XML Format

Some elements/attributes listed below are listed as required and/or optional. If an required elements/attributes are missing, I don't think it will break anything. Likewise, in certain cases if optional elements/attributes are missing, it might break. YMMV.

### Recipe

+	`/recipe/name`
	+	Name of the recipe.
	+	Required
+	`/recipe/source`
	+	Source of the recipe.
	+	Required
+	`/recipe/source/a/@href`
	+	Link to a webpage.
	+	Optional. Required if element `/recipe/source/a` exists.
+	`/recipe/source/a/text()`
	+	Text associated with the link.
	+	Optional.
+	`/recipe/source/ingredients`
	+	Lists the ingredients in the recipe.
	+	Required.
+	`/recipe/source/ingredients/@heading`
	+	Name of the section of ingredients.
	+	Useful if there are multiple 'sub recipes' within the recipe (eg. crust, topping, etc).
	+	Optional.
+	`/recipe/source/ingredients/ingredient/`
	+	Individual ingredient in the recipe
	+	Required.
+	`/recipe/source/ingredients/ingredient/amount`
	+	Amount of the individual ingredient in the recipe.
	+	Has attributes:
		+	`@value`
		+	`@unit`
			+	Special unit "natural" will hide the unit (useful for describing "3 Large Eggs", for example.)
	+	One or more required.
		+	Only first one is used at the moment. Others can be added for different measuring systems.
+	`/recipe/source/ingredients/ingredient/name`
	+	Name of the ingredient
	+	What would be listed on a potential grocery list
	+	Required.
+	`/recipe/source/ingredients/ingredient/note`
	+	What to do with the ingredient prior to starting the recipe.
		+	Example: A recipe calls for a sliced apple as an ingredient. You could put "Apple" as the name of the ingredient and "sliced" as a note.
	+	Optional. More then one is allowed.
+	`/recipe/source/directions/`
	+	Lists the directions for the recipe.
	+	Required.
+	`/recipe/source/directions/@heading`
	+	Name of the section of directions.
	+	Useful if there are multiple 'sub recipes' within the recipe (eg. crust, topping, etc)
	+	Optional.
+	`/recipe/source/directions/step`
	+	An individual step in the list of directions.
	+	Required.

#### Example

	<recipe>
		<name>
			Bread Muffins
		</name>
		<source>
			My Kitchen
		</source>
		<ingredients>
			<ingredient>
				<amount value='1' unit='cup' />
				<name>
					Warm Water
				</name>
			</ingredient>
			<ingredient>
				<amount value='1.25' unit='tsp' />
				<name>
					Yeast
				</name>
			</ingredient>
			<ingredient>
				<amount value='0.25' unit="tbsp" />
				<name>
					Sugar
				</name>
			</ingredient>
			<ingredient>
				<amount value='some' unit="natural" />
				<name>
					Bread Flour
				</name>
			</ingredient>
		</ingredients>
		<directions>
			<step>
				Preheat oven to 375F.
			</step>
			<step>
				Mix water, yeast, and sugar.
			</step>
			<step>
				Let yeast spawn for about 15 min.
			</step>
			<step>
				Mix in flour until bread dough consistency.
			</step>
			<step>
				Cut dough in to muffin sized chunks and place in muffin tin. Make sure the outside of the dough balls are covered in flour and not sticky.
			</step>
			<step>
				Let rise on the oven vent.
			</step>
			<step>
				Bake for 20 - 25 min.
			</step>
		</directions>
	</recipe>

### Recipe Book

+	`/recipe-book/title`
	+	A title for the recipe book.
	+	Required
+	`/recipe-book/author`
	+	The author/compiler/editor for the recipe book.
	+	Required
+	`/recipe-book/recipes`
	+	A section of recipes
	+	One (or more) required
+	`/recipe-book/recipes/@heading`
	+	A heading to separate different sections of the book.
	+	Required if more then one `/recipe-book/recipes` elements.
	+	Optional if only one `/recipe-book/recipe` element.
+	`/recipe-book/recipes/recipe`
	+	Contents of a single recipe
	+	Required
+	`/recipe-book/recipes/recipe/@href`
	+	The path to a recipe.
	+	Optional.
	+	Required if `/recipe-book/recipes/recipe/<sub-elements>` is empty.
	+	Takes precedence over the contents of `/recipe-book/recipes/recipe`.
+	`/recipe-book/recipes/recipe/<sub-elements>`
	+	Information on a recipe.
	+	Follows the same format as a separate recipe xml.

#### Example

	<recipe-book>
		<title>
			Recipe Book
		</title>

		<author>
			Aaron Herting
		</author>

		<recipes heading="Dinners">
			<recipe href="recipes/helgas_red_cabbage.xml" />
		</recipes>

		<recipes heading="Breads">
			<recipe>
				<name>
					Bread Muffins
				</name>
				<source>
					My Kitchen
				</source>
				<ingredients>
					<ingredient>
						<amount value='1' unit='cup' />
						<name>
							Warm Water
						</name>
					</ingredient>
					<ingredient>
						<amount value='1.25' unit='tsp' />
						<name>
							Yeast
						</name>
					</ingredient>
					<ingredient>
						<amount value='0.25' unit="tbsp" />
						<name>
							Sugar
						</name>
					</ingredient>
					<ingredient>
						<amount value='some' unit="natural" />
						<name>
							Bread Flour
						</name>
					</ingredient>
				</ingredients>
				<directions>
					<step>
						Preheat oven to 375F.
					</step>
					<step>
						Mix water, yeast, and sugar.
					</step>
					<step>
						Let yeast spawn for about 15 min.
					</step>
					<step>
						Mix in flour until bread dough consistency.
					</step>
					<step>
						Cut dough in to muffin sized chunks and place in muffin tin. Make sure the outside of the dough balls are covered in flour and not sticky.
					</step>
					<step>
						Let rise on the oven vent.
					</step>
					<step>
						Bake for 20 - 25 min.
					</step>
				</directions>
			</recipe>
		</recipes>
	</recipe-book>

repository: qwertos/recipe-gen

repo_name: qwertos/recipe-gen


text:
# Containerized PostgreSQL on Atomic Platforms

This repository is a demo area showing how high availability, scalable
PostgreSQL can be built out using Kubernetes and Docker (and run on
Atomic Host!).  These are not production solutions, but rather
intended to show off advances in Kubernetes and clustered PostgreSQL.

Since all of the deployments in this repo rely heavily on StatefulSet, you
need to use Kubernetes 1.5 or later.

## patroni_petset

This directory demonstrates building a high-availability single-master
PostgreSQL cluster under Patroni, using Kubernetes StatefulSet (PetSet).

See its README for more information.

## citus_petset

This directory contains a prototype of a CitusDB sharded database cluster under
Kubernetes StatefulSet(PetSet).  See its README for more details.

## governor-petset

This directory contains a prototype of the new Go-based Governor PostgreSQL
cluster under Kubernetes.  It is a WIP, and doesn't yet work.

## LICENSING

The general repository is under the MIT License.  However, the
cluster examples incorporate code from other projects, which may be
differently licensed.  Please check the individual directories
if you have specific licensing needs.

repository: JoshuaPK/atomicdb

repo_name: JoshuaPK/atomicdb


text:
# Case

A case is a way to track transactions with a citizen.

## Use cases and requirements

The Case model should have properties for:

**subject**

> Describe what the case is about.

**date created**

> When the case was opened.

**status**

> Current status of the case.

## Types

This maps to the Smart Cities Concept Model [Case type](http://www.legsb.gov.uk/smartcityconceptmodel/index.php?Action=ShowConcept&Id=172).

### Sub-types

Just as Action and other common types have a number of sub-types, here are specific Service request sub-types for different kinds of services councils provide:

* AdditionalBinRequest
* AssistedCollectionRequest
* BulkyCollection
* ChargeableBulkyCollection
* ClinicalOneTimeCollection
* ClinicalCollection
* ReportDamage
* DeadAnimal
* EmergencyCollection
* FreezerCollection (why not bulky?)
* NewCollection
*

## Properties

Term     | Mapping | Definition
---------|---------|-----------
subject | [schema:name](http://schema.org/name) | Subject of the case.

## Serialisation

JSON Schema

JSON

{!examples/round.json!}

repository: Tubbz-alt/waste-service-standards

repo_name: Tubbz-alt/waste-service-standards


text:
# fixing_ubuntu_resolution
Since it keeps happening (RTX 2070), rather just record the steps and open the process to anyone having similar problems

### Screen Settings
monitor: benq GW2470HL
Color profile: http://www.tftcentral.co.uk/articles/icc_profiles.htm
Characteristics: https://www.cnet.com/products/benq-gw2470hl-led-monitor-full-hd-1080p-23-8/

# If the problem is screen related:

Bear in mind that this could also be GPU Related. I recommend to look through all the tutorial before jumping into executing the code line by line.

in command line:
`cvt 1360 768 60`

Output:
`1920x1080 59.96 Hz (CVT 2.07M9) hsync: 67.16 kHz; pclk: 173.00 MHz`
Modeline "1920x1080_60.00"  173.00  1920 2048 2248 2576  1080 1083 1088 1120 -hsync +vsync

## Create a new mode with the copied modeline and xrandr.:

`xrandr --newmode "1920x1080_60.00"  173.00  1920 2048 2248 2576  1080 1083 1088 1120 -hsync +vsync`

Output: `xrandr: Failed to get size of gamma for output default`

## With the following command, you get the connected port.

`xrandr --query | grep connected`

At this point, if nothing changes, you begin to wonder if it really is a resolution related problem. You can verify the output with the following commands:

The output looks like this:
`default connected primary 1024x768+0+0 0mm x 0mm

xrandr

xrandr --listmonitors

xrandr --addmode default 1920x1080_60.00`

[Relevant Thread about xrandr](https://askubuntu.com/questions/303072/xrandr-screen-cannot-be-larger-than-1680x1680-desired-size-3360x1050#565040)

[How to set an executable script](https://askubuntu.com/questions/890231/adding-newmode-with-xrandr-800x480-60-00)

# If you have a fat GPU, this could also be a Driver Update Issue
This has been a recurring problem for me (it almost never is a resolution issue. If that is also your case, you can reset everything to normal with this:

`sudo apt-get purge nvidia*
sudo add-apt-repository ppa:graphics-drivers`

And update

`sudo apt-get update`

[DOWNLOAD LATEST COMPATIBLE DRIVER](https://askubuntu.com/questions/18747/how-do-i-install-run-files)

And then, according to your driver version:

`chmod +x NVIDIA-Linux-x86_64-418.43.run`

`sudo ./NVIDIA-Linux-x86_64-418.43.run`

`sudo reboot`

& you are good to go.


text:
# About

Hodl is a decentralized application built on Ethereum. Using Hodl, you can lock your funds in a smart contract to prevent your weak hands from getting the best of you.

# Features

- Full test suite
- Transaction lifecycle notifications, i.e. 'Transaction Pending', 'Transaction Confirmed'
- Security audit (pending)
- Solidity 0.5.8
- Elegant minimalist design
- React front-end
- Seamless contract interaction
- Flawless mobile optimization

# Getting started

- Download [metamask](https://metamask.io/)
- Switch to Ropsten test network (Mainnet coming soon)
- Get some test ether from a [faucet](https://faucet.metamask.io/)
- Enter an amount and time to lock up your funds and click 'Go'
- Once the alloted time is up, you can withdraw your funds

repository: georgerobescu/hodl

repo_name: georgerobescu/hodl


text:
---
layout: post
title: How to merge N sources using Kotlin Flow
date: 2019-10-20 21:00:00
tags: [kotlin, coroutines, flow]
---

In an effort to expand the projects that I am working on from being only on the JVM, I've been migrating them to [Kotlin multiplatform](https://kotlinlang.org/docs/reference/multiplatform.html). This year [Flow](https://medium.com/@elizarov/kotlin-flows-and-coroutines-256260fb3bdb) was introduced, the most appropriate replacement for RxJava.

Not all operators that one can find on RxJava are available on Kotlin's Flow, but the goal is not to have a perfect replacement anyway. Due to how coroutines works, operators are much [easier to implement and to maintain](https://medium.com/@elizarov/simple-design-of-kotlin-flow-4725e7398c4c).

Recently I was converting a class that powered a screen that presented a list of offline items, including ones in the process of being downloaded. Naturally, I needed to persist both the metadata as well as the audio files for offline playback. The method to get all book's metadata was defined as:

```kotlin
fun offlineAudiobooks(): Flow<List<Audiobook>>
```

The audio files though, are managed by a 3rd-party vendor, with methods to query the download status individually, per book id. A simplified version is:

```kotlin
fun downloadState(audiobook: Audiobook): Flow<Status>

sealed class Status {
	data class Progress(val percent: Double) : Status()
	data class Error(val throwable: Throwable) : Status()
	object Completed : Status()
	object NotDownloaded : Status()
}
```

The UI layer is reactive and based on an uni-directional data flow that follows the concept introduced by Redux with a class that represents the state of the screen at any time of the application's lifecycle.

To correctly display the downloads statuses one would have to first query what books are offline, to then for each item of the returned list get the up-to-date download state, to finally flat all streams. Since one can have any number of offline items, it does not seem to be intuitive how one can merge N streams.

Luckily there is an [operator](https://github.com/Kotlin/kotlinx.coroutines/blob/f605b26cd08b6b1fbef889310f5aa6c28ade2e72/kotlinx-coroutines-core/common/src/flow/operators/Zip.kt#L286-L301) that accepts an `Iterable` and a function with `FlowCollector` being the receiver. Its simplified prototype is:

```kotlin
fun <T, R> combineTransform(
    flows: Iterable<Flow<T>>,
    transform: suspend FlowCollector<R>.(Array<T>) -> Unit
): Flow<R>
```

The way it fits the solution is:

```kotlin
offlineAudiobooks().flatMapConcat { books ->
  val offlineBooksFlows = books.map { book ->
    downloader.downloadState(book).map {
      OfflineAudiobook(book, it)
    }
  }
  return@flatMapConcat combineTransform(offlineBooksFlows) {
    emit(it.toList())
  }
}
```

Since I'm building on top of Kotlin coroutines, `map {}` calls are easier to understand because they apply for both synchronous as well as asynchronous calls.

Simplicity is relative, and I was pleased to have came up with a complex algorithm such as the one above.

extension: markdown


text:
# Simp-List
Task tracking 'to-do' list style electron application with priority levels and due dates.

![Simp-List Logo](https://raw.githubusercontent.com/mizodo/Simp-List/master/assets/icons/win/icon.png)

## Summary

Simp-List is a a simple 'to-do list' style application for tracking **active** and **completed** task.  I made this application because other 'to-do' list applications didn't really give me what I wanted.

**Simp-List** shows task items with 4 key points of information.
1. **Text Content** describing the task
2. **Due Date** associated with the task.
3. **Priority Level** of the task.
4. **Main Status**, either Complete or Active.

## Screenshot
![Simp-List Logo](https://raw.githubusercontent.com/mizodo/Simp-List/master/img/simp_list_screenshot1.JPG)
___
# Application Breakdown
## How to Package and Run App
(Note: tested for Windows only at the moment)
- Clone this repository to your computer.
- Run `npm install`.
- In 'main.js', line 3, change `developmentEnviroment` to `false`.
- In the terminal, type the command, `npm run package-win` .
- The app will be written to and available in the 'release-builds' folder. Open it and double click the executable to launch.
## Application on Initial Load
When application first loads. It searches for an `appSettings.json` file within the user's application folder.
- If it exist, associated settings are loaded from this file, such as the UI settings and the 'last used database' from the `lastUsedDBPath` key.)
- If it does NOT exist, a 'default' 'appSettings' file is created and saved to the user's application folder location. Default settings include the creation and use of a 'default' database that will be stored in the user's application folder with a simple path name of `db/default_task.db`.

## Menu Options

The Menu can be accessed from the top left menu bar.  Currently, this menu gives 3 options
- **Load DB File**: Will open a dialog window for the user to select a database from a specific file location.  Once selected, this database will be loaded and displayed in 'Main Window'.  The path for the loaded database will be saved in the `appSettings.json` file under the key `lastUsedDBPath`.
- **New DB File**: Opens a dialog window for the user to create a new database with their chosen name and directory path.  Once created, an Empty Active and Completed task list will display on the Main Window ready for the user to start adding task.  The newly added database's path will be saved to the `appSettings.json` file under the key `lastUsedDBPath`.
- **Settings**: Opens an element pane with settings options related to the application.

### Settings and Options

1. Task List Side By Side: (Default: false).  If true, the active and completed task will show side by side if there is room within the window. If false, the active and completed task list are stacked vertically.
2. Due Dates Change Color: (Default: true).  If true, the due dates for each task will be colored depending on how much time remains between the the current date and the due date. If set to false, no colors will be added to the due dates.
    - Note, if enabled: The Due Date Color scheme follows the same pattern as the item level priority colors.  Although they share the same color pattern, they are independent of the item priority level. The only time they are linked, is when first adding a task within the 'add new task' element. This enables dynamic use of the priority system, for example; a user can set different priority levels for task due on the same day.
3. Automatically change date based on priority: (Default: true).  This setting only applies to the **add new task** element. If true, the 'new task' due date will change depending on the priority level you select.  If false, this functionality is disabled. This does NOT effect existing task, only the new task being added in the 'add new task' element.

## Main Window
The main window consist of three main sections.
- The 'Add New Task' section
- Active List of task
- Completed List of task

### Section 1: Add New Task
The 'Add New Task' Section consist of a simple input at the top of the page.  When the input is selected, the element will expand revealing a few more options related to the soon to be added task. A new task will consist of
- **Text Content**: the meat and potatoes for describing the soon to be added task.
- **Priority Level**: A color coded and number based range between 1 and 4 that showcases the level of importance related to the task. (See 'Priority Levels: Explained' section for more details).
- **Due Date**: A date which the task should be complete by. This date will change depending on the priority level selected when adding a new task, but can be edited after selecting a priority level. If you want to edit the due date, make sure to select your priority level first, then edit the date. If the date is edited and then the priority level is changed, the date will recalculate based on the newly selected priority level.  (This only happens during the stage of adding a new item.  Due dates will not be changed when changing the priority level of an already added task item). This feature can be turned off in the settings pane.

### Section 2: Active List
The **Active List** shows all the task which are still pending completion.  Each task item in the active list shows the following items
- Text Content describing the details of the task.
- Color Coded priority level in the top left corner.
- Due Date in the top right corner.
- A checkbox for marking the task completed.
- An 'X' icon for deleting the task.

### Section 3: Completed List
The **Completed List** shows the current day's completed task. Each completed task item in this list shows the same elements that task within the 'active list' show, with the main difference being that the text content has a strike-through and the checkbox has a check mark in it.

## Priority Levels: Explained
The priority level system is simple, it consist of 4 color coded levels from 1 being the most important to 4 being the least important. When adding a new task item, the due date will change according to the standards described in the below table (this can be turned off in the settings).  This is not a strict rule set and only applies when changing the priority level within the 'Add New Task' section.  The due date can be changed if desired.  The 'resolution' time described below is only a baseline.

| Priority | Type      | Resolution |
| -------- | --------- | ---------- |
| P1 (red).| Critical  | 4 hours  |
| P2 (yellow).| Important | 24 hours |
| P3 (green).| Normal  | 3 days |
| P4 (blue)| Low  | 5 days  |

The point of the priority level system is to be able to view a group of task and quickly determine what items need attention over others.  The user is free to decide what due dates they wish to set on their task.  Auto changing of due dates based on priority level only occurs when changing the priority level in the 'Add New Task' section.  The date can be changed after the priority level is selected, as well as after an item is added to the list.  Once a task is added, the due date will not change unless the user specifically edits the due date. So, even if an existing items priority level is changed, the due date will remain the same unless the user manually edits the due date.

Task Items are sorted by priority level, with the most important task being listed at the top of the list. Task Items are sorted by priority level upon the below triggers
- loading a new or existing database
- adding a new task item to the list
- manually selecting the 'sort' button in the list header.

note: task can also be sorted by due date. Simply use the right arrow to sort by due date.

note: Task Items within a list will **NOT** be sorted by priority when the user changes the priority level of an existing task item.

repository: mizodo/Simp-List

repo_name: mizodo/Simp-List


text:
# Topic

> 給身心障礙藝術家成長茁壯的空間 (Giving Artists With Disabilities a Space to Thrive)

> When we were founded, the idea of disability, then, was so radically different than what it is now.

> 當我們剛成立時，當時身心障礙這個概念跟現在有非常大的不同.

## Host
Samuel

## Learning points
1. * found  [faʊnd]  (v.)  建立(組織、公司、建築...等)
     + = to create = to start
     + find - found - found 發現

    * establish  [əˋstæblɪʃ]  (v.)  建立
     + = to set up = to create = to found
---
2. * disability  [dɪsəˋbɪlətɪ]  (n.)  身心障礙
     + I have very good speaking abilities.
     > 我擁有非常好的口說能力。
     + He has the ability to solve a Rubik’s Cube behind his back.
     > 他有能力在背後解開魔術方塊。
     + a learning disability 學習障礙
     + a seeing disability 視覺障礙
     + a physical disability 行動障礙

    * disabled  [dɪsˋeb!d]  (adj.)  身障者
       + Most malls offer special parking spots for the disabled.
       > 大部分的賣場有提供特殊停車位給身障者。
---
3. * radically  [ˋrædɪk!ɪ]  (adv.)  徹底地
     + = completely
     + radical 激進
     + radicalist 激進份子

    * fundamentally  [͵fʌndəˋmɛnt!ɪ]  (adv.)  根本地


text:
This document details how Lua code can operate within zippylog.

# Parsing Lua Code

When zippylog receives Lua code, it first loads it into a new Lua interpreter
(or a state in Lua lingo). The code is compiled by the state. It is highly
likely that if the Lua code could not be compiled, the operation will abort
immediately or the requested operation will fail.

After the Lua code is loaded, zippylog looks for specifically named variables
in the global environment. These variables are Lua functions which represent
callbacks that are executed at various phases or variables that tell zippylog
how to execute.

*Future Improvement: determine capabilities from a table instead. i.e. don't
pollute global namespace*

# Available Libraries

Lua interpreters inside zippylog either have no libraries or very few
libraries loaded by default. This is a security feature. Since the process can
run user-supplied code, we'd rather start with a more secure system than a
more insecure one.

Libraries can be enabled through various mechanisms. See the process
documentation for the specifics.

# Envelope API

You'll likely encounter a zippylog envelope inside Lua. Envelopes are
typically passed as function parameters or returned as a result of an
operation.

Envelopes can be created in the following manner:

    -- construct a new, empty envelope
    -- equivalent to the default constructor in the C++ API
    e = zippylog.envelope.new()

Envelope instances in Lua have the following API:

    -- assuming our envelope instance is stored in the local variable, e

    -- obtain the serialized value of the envelope (as string)
    serialized = e:serialize()

    -- obtain the number of messages embedded in the envelope
    count = e:message_count()

    -- obtain the namespace and type of the message at offset i, where i
    -- starts at 1
    namespace, type = e:message_enumeration(i)

    -- obtain the number of tags on the envelope
    count = e:tag_count()

    -- add a string tag to the envelope
    e:add_tag("foo")

    -- obtain the tag at offset i, where i starts at 1
    tag = e:get_tag(i)

    -- obtain the size of the serialized envelope
    size = e:serialized_byte_size()

    -- obtain the value in the string_value field or nil if not set
    s = e:get_string_value()

    -- set the string value to the specified string, s
    e:set_string_value(s)

    -- obtain the message at offset i, where i starts at 1
    message = e:get_message(i)

    -- add a message instance (see below for API) to an envelope
    e:add_message(m)

# Message API

Messages (the things inside envelopes) can be interacted with inside Lua.

Messages are protocol buffer message types. Therefore, their behavior is
mostly governed by the
[lua-protobuf](https://github.com/indygreg/lua-protobuf) project.

# Callback Functions

In this section, we describe the various Lua functions that can be executed
during processing. The section name is the function name that needs to exist
in the global namespace for the capability to work. Sections are in
alphabetical order.

## zippylog_load_string(string)

Called when string data is being loaded into zippylog. This could be done via
zippylog_string_loader or a similar process.

This function performs a number of roles:

* Determine whether to accept the data
* Determines where to route the data (if applicable)
* Makes modifications to the string (as necessary)
* Splits the string into multiple components
* Converts the string into a set of messages
* Converts the string into a set of envelopes

The function communicates what it did via its return type pattern. It must
return one of the following type patterns:

* nil - the function didn't do anything. Calling tool defines the appropriate
behavior
* true - the string should be loaded as-is. If changes were made to the
string, they won't be reflected.
* false - the string should not be loaded.
* string - use the returned string value as the new string.
* string, string, ... - any number of strings. Each string is independent and
has no association with each other. It is as if the strings were loaded
separately.
* protocol buffer message - message representation of this string
* message, message, ... - any number of protocol buffer messages to be added
to one envelope
* envelope - a specific envelope to produce
* envelope, envelope, ... - any number of envelopes
* table, any of above - table controls routing based on the keys *bucket* and
*set*

When string data is returned (includes true, false, and possibly nil cases),
the behavior is for a new envelope to be created that has the string data from
this function for each string emitted.

When a protocol buffer message is emitted, a new envelope is created
containing that message or list of messages.

When an envelope is emitted, that envelope is used verbatim.

Here are some examples (we assume the string standard library is availble):

    -- forward lines beginning w/ "apache" as-is and drop everything else
    function zippylog_load_string(s)
        if string.sub(s, 0, 6) == "apache" then
            return true
        end

        return false
    end

    -- reverse the input string
    function zippylog_process_line(s)
        return string.reverse(s)
    end

    -- route strings based on the first 5 characters
    function zippylog_load_string(s)
       return { ["set"] = string.sub(s, 0, 5) }, true
    end

## zippylog_subscription_filter_envelope(envelope, bucket, stream_set, stream)

This function is called when subscribed to written envelopes in a remote store
(e.g. *SubscribeEnvelopesV1* protocol). The function is called for every
envelope that matches the subscription.

The purpose of this function is to filter unwanted envelopes from being sent
to the client. If the function returns true, the envelope passes the filter
and is sent to the client. If any other value, the envelope is ignored and not
sent to the subscriber.

## zippylog_subscription_timer_signaled()

This function is called whenever a configured timer (see
*zippylog_subscription_timer_interval* below) fires.

The purpose of this function is to perform data processing at specific time
intervals. For example, a subscription may wish to periodically emit a rolling
average or similar.

This function can have the following return type patterns:

* envelope - a single envelope to be sent to the subscriber
* envelope, envelope, ... - any number of envelopes to be sent to the
subscriber
* message - a single protocol buffer message. wrapped in an envelope and sent
to the subscriber
* message, message, ... - any number of protocol buffer messages. All are
wrapped in a single envelope and sent to the subscriber

If there is no return value, nothing is done. If the return value does not
match any of the above, an error is generated.

# Configuration Variables

The following variables can control behavior.

## zippylog_subscription_timer_interval

Defines the integer number of milliseconds at which a timer should be fired
for a subscription. *zippylog_subscription_timer_signaled()* must also be
defined.

repository: indygreg/zippylog

repo_name: indygreg/zippylog


text:
# PyLocker

![alt-text](https://img.shields.io/static/v1?label=Made%20using&message=Python&color=yellow&logo=python) ![alt-text](https://img.shields.io/static/v1?label=And&message=SQlite&color=purple&logo=sqlite) ![alt-text](https://img.shields.io/static/v1?label=build&message=failing&color=red) ![alt-text](https://img.shields.io/github/license/Anonymous390/Password-Manager)

PyLocker is a simple Password Manager. It stores your passwords with a simple CLI interface.

repository: Daewiix/PyLocker

repo_name: Daewiix/PyLocker


text:
# The Pycon UK Society Income and Expenditure Conference 2014

## Income

| Item                    | Value (GBP) |
| :---------------------- | -----------:|
| Delegate fees           |      44,236 |
| Sponsorship direct      |      10,298 |
| Miscellaneous receipts  |         263 |
| Surplus 2013 Conference |         103 |
| Bank interest           |          12 |
| **Total**               |  **54,911** |

## Expenditure

| Item                                       | Value (GBP) |
| :----------------------------------------- | -----------:|
| Venue charges after direct sponsorship (*) |      34,842 |
| Merchandise                                |       9,396 |
| Teachers' bursaries                        |       1,600 |
| Hotel accommodation and flights            |         931 |
| Beer                                       |         640 |
| Equipment                                  |         580 |
| Volunteer catering Thursday and Saturday   |         544 |
| Mobile phones                              |         384 |
| Audio visual                               |         342 |
| Stationery                                 |         237 |
| **Total**                                  |  **49,497** |
| **Surplus/Loss**                           |   **5,414** |

## Notes

(*) £27,628 was invoiced direct to sponsors by Coventry University Enterprises Ltd. The total cost for venue hire was £62,470.

**Prepared by Mary Mooney 28 August 2015**

repository: zeth/PyConUKSociety

repo_name: zeth/PyConUKSociety


text:
# This extension is a fork from [vscode-vlang](https://github.com/vlang/vscode-vlang) for github1s.

# At present only languages features is reserved

# I have deleted some files and only reserved the necessary code

# V language support for Visual Studio Code

[![Version](https://vsmarketplacebadge.apphb.com/version/vlanguage.vscode-vlang.svg)](https://marketplace.visualstudio.com/items?itemName=vlanguage.vscode-vlang)
[![Installs](https://vsmarketplacebadge.apphb.com/installs/vlanguage.vscode-vlang.svg)](https://marketplace.visualstudio.com/items?itemName=vlanguage.vscode-vlang)
![GitHub Workflow Status](https://img.shields.io/github/workflow/status/vlang/vscode-vlang/CI)

Provides [V language](https://vlang.io) support for Visual Studio Code.

## Features

- Syntax Highlighting

## License

[MIT](./LICENSE)

gha_language: TypeScript


text:
---
title: "coffeegangster"
author: " Clara Esfeld"
date: "2018-04-16"
---

![cafebild](../../img/1200/17.jpg)

Welcome to my blog. I hope you will read blog posts and --- contribute yourself.

##FIKA

>"Functioning as both a verb and a noun, the concept of fika is simple. It is the moment that you take a break, often with a cup of coffee, but alternatively with tea, and find a baked good to pair with it. You can do it alone, you can do it with friends. You can do it at home, in a park or at work. But the essential thing is that you do it, that you make time to take a break: that's what fika is all about."

>(source: Fika: [The Art of the Swedish Coffee Break] (https://www.thekitchn.com/what-in-the-world-is-fika-an-intro-to-the-swedish-coffee-break-the-art-of-fika-219297))

###-- Clara & La Helen

_Photo creds:
Jacek Dylag
@dylu_


text:
# Content type

The endpoint's output content type is bound to the body outputs, that are specified for the endpoint (if any). The
[codec](codecs.md) of a body output contains a `CodecFormat`, which in turns contains the `MediaType` instance.

## Codec formats and server interpreters

Codec formats define the *default* media type, which will be set as the `Content-Type` header. However, any
user-provided value will override this default:

* dynamic content type, using `.out(header(HeaderNames.ContentType))`
* fixed content type, using e.g. `out(header(Header.contentType(MediaType.ApplicationJson)))`

## Multiple content types

Multiple, alternative content types can be specified using [`oneOf`](oneof.md).

On the server side, the appropriate mapping will be chosen using content negotiation, via the `Accept` header, using
the [configurable](../server/options.md) `ContentTypeInterceptor`. Note that both the base media type, and the charset
for text types are taken into account.

On the client side, the appropriate mapping will be chosen basing on the `Content-Type` header value.

For example:

```scala
import sttp.tapir._
import sttp.tapir.Codec.{JsonCodec, XmlCodec}
import sttp.model.StatusCode

case class Entity(name: String)
implicit val jsonCodecForOrganization: JsonCodec[Entity] = ???
implicit val xmlCodecForOrganization: XmlCodec[Entity] = ???

endpoint.out(
  oneOf(
    oneOfVariant(customCodecJsonBody[Entity]),
    oneOfVariant(xmlBody[Entity])
  )
)
```

For details on how to create codes manually or derive them automatically, see [custom types](customtypes.md) and the
subsequent section on json.

## Next

Read on about [json support](json.md).

repository: softwaremill/tapir

gha_language: Scala

repo_name: softwaremill/tapir


text:
# ✨ Ampersand Nextjs Theme ✨

This is Stackbit's "Ampersand" theme built with [Next.js](https://nextjs.org/) and
powered by content stored in files.

Click the button below to create a new website from this theme using Stackbit:

[Live Site Demo](https://themes.stackbit.com/demos/ampersand/)

The theme can be used to create a static website that is hosted by a serverless
deployment platform such as [Netlify](https://www.netlify.com). The contents of
the website are stored in git with the rest of the site's code.

When deploying the website, [Sourcebit](https://github.com/stackbithq/sourcebit)
reads the site's contents from files and provides it to Next.js. Once Next.js
finishes generating the static website, [Netlify](https://www.netlify.com) pushes
the static files to its CDN.

[Sourcebit](https://github.com/stackbithq/sourcebit) and its plugins, specifically
[`sourcebit-source-filesystem`](https://github.com/stackbithq/sourcebit-source-filesystem)
and [`sourcebit-target-next`](https://github.com/stackbithq/sourcebit-target-next),
are used to read the site's contents from files, normalize it, and provide it to
Next.js pages. It also sets up live updates in development mode allowing you to
update the content files and instantly see your updates in the browser.

## Quick Start 🏎

[Create a site](https://app.stackbit.com/create?theme=https://github.com/stackbit-themes/ampersand-nextjs&utm_source=theme-readme&utm_medium=referral&utm_campaign=stackbit_themes) from this theme using Stackbit.

Stackbit will execute following steps for you

-   Create a new GitHub repository with the contents of this repository.
-   Create [Netlify](https://www.netlify.com) site connected to the GitHub repo
-   Deploy the Netlify site.
-   Create a "commit" webhook in GitHub that will trigger Netlify deployment as
    soon as new commit is pushed to GitHub.
-   Create a Stackbit project that will allow you edit your website via on-page
    visual editing experience.

## Editing Content 📝

Once Stackbit creates a site, you can start editing the content using the free
on-page editing experience provided by the [Stackbit Studio](https://stackbit.com?utm_source=project-readme&utm_medium=referral&utm_campaign=user_themes).

[![](https://i3.ytimg.com/vi/zd9lGRLVDm4/hqdefault.jpg)](https://stackbit.link/project-readme-lead-video)

Here's a few resources to get you started:

-   📺   [Editing Content](https://stackbit.link/project-readme-editing-video)
-   📺   [Adding, Reordering and Deleting Items](https://stackbit.link/project-readme-adding-video)
-   📺   [Collaboration](https://stackbit.link/project-readme-collaboration-video)
-   📺   [Publishing](https://stackbit.link/project-readme-publishing-video)
-   📚   [Stackbit Documentation](https://stackbit.link/project-readme-documentation)

If you need a hand, make sure to check the [Stackbit support page](https://stackbit.link/project-readme-support).

## Develop Locally

1.  [Create a site](https://app.stackbit.com/create?theme=https://github.com/stackbit-themes/ampersand-nextjs&utm_source=theme-readme&utm_medium=referral&utm_campaign=stackbit_themes) from this theme using Stackbit.

1.  Once finished, you will be redirected to Stackbit Studio where you will be
    able to edit the content using the free on-page editing experience, and
    publish new versions of your site.

1.  To further develop your site, clone the generated repository.

1.  Install dependencies

    run npm install

1.  Start the Next.js local development server:

        npm run develop

1.  Open [http://localhost:3000/](http://localhost:3000/) in the browser to see
    your site. You can now edit the site contents, and the browser will
    live-update your changes. 🎉

## Building for production 🏗

To build a static site for production, or test locally how it worls, run the
following command:

    npm run build

The exported site will be written to `out` folder. The contents of this folder
can be deployed by serverless deployment platform such as [Netlify](https://www.netlify.com).
You can start a local server serving the static files from the `out` folder, for
example by installing and running `http-server`:

    npm install http-server -g
    http-server out


text:
# 3050 Group Project

### Project Goal
The goal of this project was to design and implement a simple trading algorithm that could be used for trading strategies in investment firms. Investment firm X are responsible for trading a stock for company Y. Company X can predict the stocks for the company Y for the n days with a reasonable amount of accuracy. The predicted prices are Pn, where n is the day number. The goal of this strategy is to buy and sell stocks of company Y in order to max profits.

The strategy is that Y’s stock would be bought on day b1. Then Y’s stock will be sold on s1. The next day will repeat. If r = 1 the optimal trading strategy is buy at day 1 and sell at day 4. If r = 3 then the optimal trading strategy is to buy at day 1 and sell at day 4. Then buy on day 5 and sell at six.

### How To Use

A computer with a command line is needed.

Included is an input file. The main program files and a make file. In terminal, navigate to the 3050_Final_Project folder. You would need to compile the program so use the make command. To run the project you would need to type the following command:

  program name, number of days, r value and FILENAME

  FILENAME is the input file that would be included.