text:
# box-setup

A set of instructions and scripts to document and semi-automate the setup of a new Windows developer machine

Inspired by [gpspake/dotfiles](https://github.com/gpspake/dotfiles)

Best executed in order. See README in each directory.

## Fresh Install

1.  Create bootable installer via [Windows 10 media creation tool](https://www.microsoft.com/en-us/software-download/windows10)
2.  Boot to installer
3.  Delete all existing partitions
4.  Install Windows 10
5.  After initial setup, sign into Microsoft Store to upgrade to Windows 10 Pro
6.  Run [O&O AppBuster](https://www.oo-software.com/en/ooappbuster) to remove bloatware
7.  Reset PC

## Configuration

0.  Do not connect to network yet
1.  Enable BitLocker
2.  Run [WindowsSpyBlocker](https://github.com/crazy-max/WindowsSpyBlocker)
3.  Run [O&O ShutUp10](https://www.oo-software.com/en/shutup10)
4.  Connect to network
5.  [Configure WSL](https://github.com/collinbarrett/box-setup/tree/main/wsl)
6.  [Configure git](https://github.com/collinbarrett/box-setup/tree/main/git)
7.  [Configure Windows](https://github.com/collinbarrett/box-setup/tree/main/windows)
8.  Configure [winget](https://docs.microsoft.com/en-us/windows/package-manager/winget/) and install apps
9.  [Configure BleachBit](https://github.com/collinbarrett/box-setup/tree/main/bleachbit)
10. [Configure windows-terminal](https://github.com/collinbarrett/box-setup/tree/main/windows-terminal)
11. [Configure zsh](https://github.com/collinbarrett/box-setup/tree/main/zsh)
12. Configure Firefox
13. Configure Visual Studio Code
14. Configure Visual Studio

repository: collinbarrett/box-setup

gha_language: Shell

repo_name: collinbarrett/box-setup


text:
# Neolytics

Neolytics is a gem which allows you to analyze a section of your code using Neo4j.  The data model used is described below and a number of example queries are given (you can [suggest an idea](https://github.com/neo4j-examples/ruby_code_analytics/labels/idea%20for%20query) for a new query).

There is also a [ruby_code_analytics](https://github.com/neo4j-examples/ruby_code_analytics) Rails application which can take data generated by neolytics and allow you to browse it with a nice UI.

## Installation

Add this line to your application's Gemfile:

```ruby
gem 'neolytics'
```

And then execute:

    $ bundle

Or install it yourself as:

    $ gem install neolytics

## Usage

All you need to do to use Neolytics is

    neo4j_session = Neo4j::Session.open(:server_db, 'http://neo4j:pass@localhost:7474')
    # or
    neo4j_session = Neo4j::Session.current

    Neolytics.record_execution(neo4j_session) do
      # Code that you want to analyze here
    end

During the code execution

## Model:

Neolytics generates the following structures:

### Abstract Syntax Trees

![Abstract Syntax Tree](examples/model/ast.png)

### TracePoint execution tracking

![Abstract Syntax Tree](examples/model/trace_point_flow.png)

### Objects (including recursively browsed class and modules)

![Abstract Syntax Tree](examples/model/object_relationships.png)

### Links between these domains

TracePoints are linked to AST nodes:

![Abstract Syntax Tree](examples/model/trace_point_ast_nodes.png)

TracePoints are linked to objects (arguments, return values, variable values, context objects):

![Abstract Syntax Tree](examples/model/trace_point_objects.png)

## Example queries:

### Queries using the abstract syntax trees:

#### Get all assignments

```cypher
  MATCH (a:ASTNode)
  WHERE a.type IN ['lvasgn', 'ivasgn', 'casgn', 'op_asgn']
  RETURN a.type, a.name, a.operator, a.expression
  ORDER BY a.type, a.name
```

[Example Output](examples/output/assignments.csv)

#### All defined methods:

```cypher
  MATCH (def:ASTNode {type: 'def'})
  WITH def
  ORDER BY def.file_path, def.first_line
  LIMIT 50
  MATCH shortestPath((def)-[:HAS_PARENT*]->(class:ASTNode {type: 'class'}))
  RETURN def.file_path +':'+ def.first_line AS line, class.name AS class, def.name AS method
```

[Example Output](examples/output/ast.csv)

#### Assignment-Branch-Condition (ABC) Metric

```cypher
  MATCH (def:ASTNode {type: 'def'})

  OPTIONAL MATCH (def)<-[:HAS_PARENT*]-(assignment:ASTNode)
  WHERE assignment.type IN ['lvasgn', 'ivasgn', 'casgn', 'op_asgn']
  WITH def, count(assignment) AS a

  OPTIONAL MATCH (def)<-[:HAS_PARENT*]-(branch:ASTNode)
  WHERE branch.type = 'send'
  WITH def, a, count(branch) AS b

  OPTIONAL MATCH (def)<-[:HAS_PARENT*]-(condition:ASTNode)
  WHERE condition.type IN ['if', 'while', 'until', 'for', 'rescue', 'when', 'and', 'or']
  WITH def, a, b, count(condition) AS c

  RETURN def.name, def.file_path, def.first_line, a, b, c, sqrt((a*a) + (b*b) + (c*c)) AS abc
  ORDER BY abc DESC
```

[Example Output](examples/output/abc.csv)

#### Cyclomatic Complexity

```cypher
  MATCH (def:ASTNode {type: 'def'})
  OPTIONAL MATCH (def)<-[:HAS_PARENT*]-(condition:ASTNode)
  WHERE condition.type IN ['begin', 'if', 'while', 'until', 'for', 'rescue', 'when', 'and', 'or']
  RETURN def.name, def.file_path, def.first_line, count(condition)
  ORDER BY count(condition) DESC
  LIMIT 50
```

[Example Output](examples/output/cyclomatic_complexity.csv)

#### All args / vars / statics / etc... in a class

```cypher
  MATCH (:ASTNode {name: 'Numeric', type: 'class'})<-[:HAS_PARENT*]-(n:ASTNode)
  WHERE n.type IN ['def', 'arg', 'optarg', 'restarg', 'lvar', 'const', 'sym']
  RETURN n.type, n.expression, n.name
  ORDER BY n.type, n.expression
```

[Example Output](examples/output/all_args_vars_statics.csv)

### TracePoint queries

#### Time spent by method

```cypher
  MATCH (tp:TracePoint)
  WITH tp.path AS path, tp.lineno AS line, tp.defined_class AS class, tp.method_id AS method_id, sum(tp.execution_time) AS sum, count(tp) AS count
  ORDER BY sum(tp.execution_time) DESC
  RETURN path +':'+ line AS line, class +'#'+ method_id AS method, sum, count, sum / count AS average
  LIMIT 50
```

[Example Output](examples/output/time_spent_by_method.csv)

#### Common ancestor

```cypher
  MATCH
    (tp1:TracePoint {defined_class: 'ActiveSupport::Autoload', method_id: 'autoload_at'}),
    (tp2:TracePoint {defined_class: 'ActiveSupport::Inflector', method_id: 'underscore'})
  WITH tp1, tp2 LIMIT 1
  MATCH
    path1=(tp1)-[:HAS_PARENT*0..]->(common_ancestor),
    path2=(common_ancestor)<-[:HAS_PARENT*0..]-(tp2:TracePoint)
  RETURN tp1, tp2, common_ancestor, length(path1), length(path2)
```

[Example Output](examples/output/common_ancestor.csv)

#### See all arguments and return values for methods

```cypher
  MATCH (start_tp:TracePoint)
  WHERE start_tp.event = 'call'
  OPTIONAL MATCH (start_tp)-[argument_rel:RECEIVED_ARGUMENT]->(arg:Object)-[:IS_A]->(class:Object)
  WITH
    start_tp,
    collect(argument_rel.argument_name +': '+ arg.ruby_inspect +' ('+ class.ruby_inspect +')') AS arguments

  OPTIONAL MATCH (start_tp)<-[:STARTED_AT]-(return_tp:TracePoint)-[:RETURNED]->(o:Object)-[:IS_A]-(class:Object)
  RETURN
    start_tp.path +':'+ start_tp.lineno AS line,
    start_tp.defined_class +'#'+ start_tp.method_id AS method,
    arguments,
    o.ruby_inspect +' ('+ class.ruby_inspect +')' AS return_object
  ORDER BY start_tp.execution_index
  LIMIT 30
```

[Example Output](examples/output/arguments_and_return_values.csv)

#### Show all returns values from a particular superclass (i.e. Asking for `Numeric` gives `Fixnum`, `Rational`, `BigDecimal`, etc... types)

```cypher
  MATCH (tp:TracePoint)-[:RETURNED]->(o:Object)-[:IS_A]-(class:Object)-[:HAS_SUPERCLASS*]->(superclass:Object {ruby_inspect: 'Numeric'})
  WHERE tp.event IN ['return', 'c_return']
  RETURN tp.path +':'+ tp.lineno AS line, tp.defined_class +'#'+ tp.method_id AS method, o.ruby_inspect +' ('+ class.ruby_inspect +')' AS return_value
  ORDER BY tp.execution_index
```

[Example Output](examples/output/numeric_return_values.csv)

### Object space queries:

#### Show class hierarchy for `Numeric` class:

```cypher
  MATCH (class:Object)-[:HAS_SUPERCLASS*]->(superclass:Object {ruby_inspect: 'Numeric'})
  RETURN *
```

**Example Output:**

![Example Output](examples/output/numeric_class_hierarchy.png)

### Combination queries

#### Combining cyclomatic complexity and run-time metrics

```cypher
  MATCH (tp:TracePoint)
  WITH sum(tp.execution_time) AS total_execution_time

  MATCH (node:ASTNode {type: 'def'})
  OPTIONAL MATCH (node)<-[:HAS_PARENT*]-(condition:ASTNode)
  WHERE condition.type IN ['begin', 'if', 'while', 'until', 'for', 'rescue', 'when', 'and', 'or']
  WITH node, count(condition) AS cyclomatic_complexity, total_execution_time

  MATCH (node)<-[:HAS_AST_NODE]-(tp:TracePoint)<-[:STARTED_AT]-(return_tp:TracePoint)

  WITH
    cyclomatic_complexity,
    total_execution_time,
    tp.path + ':' + tp.lineno + ' (' + return_tp.defined_class + '#' + return_tp.method_id + ')' AS method,
    count(tp) AS executions,
    sum(return_tp.execution_time) AS total_method_execution_time

  RETURN
    method,
    cyclomatic_complexity,
    executions,
    total_method_execution_time,
    100.0 * (total_method_execution_time / total_execution_time) AS percentage_of_total_time,
    total_method_execution_time / executions AS average_execution_time

  ORDER BY total_method_execution_time DESC
```

[Example Output](examples/output/cyclomatic_complexity_and_runtime.csv)

## Development

After checking out the repo, run `bin/setup` to install dependencies. Then, run `rake spec` to run the tests. You can also run `bin/console` for an interactive prompt that will allow you to experiment.

To install this gem onto your local machine, run `bundle exec rake install`. To release a new version, update the version number in `version.rb`, and then run `bundle exec rake release`, which will create a git tag for the version, push git commits and tags, and push the `.gem` file to [rubygems.org](https://rubygems.org).

## Contributing

Bug reports and pull requests are welcome on GitHub at https://github.com/[USERNAME]/neolytics. This project is intended to be a safe, welcoming space for collaboration, and contributors are expected to adhere to the [Contributor Covenant](contributor-covenant.org) code of conduct.

## License

The gem is available as open source under the terms of the [MIT License](http://opensource.org/licenses/MIT).

license: MIT

repository: airhorns/neolytics

branch_name: refs/heads/master

extension: md

license_type: permissive

repo_name: airhorns/neolytics


text:
# Just the Gauge
Just the Gauge is a [microjs](http://microjs.com/#) library for creating simple gauges with the Canvas element.

## Getting Started
It's easy, trust me.

### 1. Include Gauge.js in your page
That's easy enough, right?
``` html
<script src="Gauge.js"></script>
```

### 2. Create a new object from the Gauge prototype.
A little javascript here, a little javascript there...
``` javascript
var gauge = new Gauge(canvas);
```
The canvas argument can be either a string representing the ID of a canvas element on the page, the canvas element itself, or the context of the canvas element. Pick one, they all work.

### 3. That's it! You're done! (Sort of...)
Of course you can just leave the options argument empty. The defaults look nice! But you probably want to tell the gauge what value it should show.

``` javascript
var gauge = new Gauge(canvas, {
	from: 0,
	to: 0.7
});
```

`from` and `to` are both normalized values from 0 to 1. In this case, our gauge will start at `0%` and animate to `70%`.

There are allot of options available, just take a look!

## Methods
Gauge only has three methods: `freeze`, `thaw`, and `setValue`. `Freeze` stops the animation, `thaw` starts it again, and `setValue` lets you, as you might expect, set the value. It accepts a single argument - a normalized value between 0 and 1. See the `to` option below.

``` javascript
myGauge.freeze();
myGauge.thaw();

myGauge.setValue(0.25);
```

Also, `stop` and `start` are aliases to `freeze` and `thaw` respectively. Just in case you don't like those names. (But who wouldn't?)

## Options
Every option (*every* option) has a default value. You can leave the entire object out if you like... But then all your gauges would go from 0% to 100%. That wouldn't be very fun. Here's the default options object to get you started. More detailed information is below.

```javascript
var defaultOptions = {
		color: "lightblue",
		bgColor: "#eee",
		lineWidth: 20,

		textOffsetX: 0,
		textOffsetY: 0,
		textFont: (this.canvas.height/5) + "px Arial",
		textColor: options.color || "lightblue",
		textAlign: "center",
		textBaseline: "middle",
		textTransform: function(value) { return Math.round(value*100) + "%"; },

		easing: "easeOutSine",
		duration: 5000,

		from: 0,
		to: 1,

		radius: 0, // calculated based on canvas height and width

		arcStart: Math.PI*3/4,
		arcLength: Math.PI*6/4,
		counterClockwise: false,

		x: this.canvas.width/2,
		y: this.canvas.height/2,

		running: true
	};
```

### color
Default: `lightblue`

The color of your gauge. Accepts any canvas strokeStyle.

### bgColor
Default: `#eee`

The background color of your gauge. Accepts any canvas strokeStyle

### lineWidth
Default: `20`

The thickness of your gauge. Accepts any number greater than zero.

### textTransform
Default: `??%`

A function that takes the current normalized value of the gauge, and returns a string to be placed in the center of the canvas representing the current value.

### textFont
Default: `??px Arial`

The default font is calculated based on the height of your canvas. It accepts any standard font property. (Think CSS `font-family` values)

### textAlign
Default: `center`

The alignment (right/left/center/justify) of the indicator text. See [textAlign](http://www.w3schools.com/tags/canvas_textalign.asp).

### textBaseline
Default: `middle`

The baseline of the indicator text. See [textBaseline](http://www.w3schools.com/tags/canvas_textbaseline.asp)

### textIdentifier
Default: `%`

The identifier (as a string) to be used at the end of the indicator text.

### textOffsetX
Default: `canvas.width/2`

The x position of the text identifier, offset from the center of the gauge.

### textOffsetY
default: `canvas.height/2`

The y position of the text identifier, offset from the center of the gauge.

### easing
Default: `easeOutSine`

Defines the easing function to use. Every easing function in the following list (except linear) requires one of the following prefixes: `In`, `Out`, `InOut`. For example, if you wanted to ease in with a sine function, you would write `easeInSine`, and if you wanted to use a cubic ease both in and out you would write `easeInOutCubic`.

Available easing functions:
- Linear
- Quad
- Cubic
- Quart
- Quint
- Sine
- Expo
- Circ

Additionally, you can define your own easing function by adding it to the Gauge.prototype.ease object. It should take the form of a standard Penner easing function. (Google it if you're not sure, and take a look at the source code.)

### duration
Default: `5000`

How long, in milliseconds, the transition from one value to the next should take.

### from
Default: `0`

The value that the gauge should start at, defined as a normalized range between 0 and 1. For example, if I want the gauge to start at 50%, I would write `0.5`, or 4% `0.04`.

### to
Default: `1`

The value you want the gauge to animate to. Takes the same form as the `from` option.

### radius
Default: `??px`

The radius of the gauge. The default radius is as largest as the narrowest side of the canvas. (It takes up as much space as possible.)

### arcStart
Default: `3π/4`

Where the gauge should start, as a radian. You may want to look up how radians are handled in canvas, as it's a bit backward.

### arcLength
Default: `6π/4`

How long the gauge should be, drawn from `arcStart`. Takes the same form as `arcStart`

### counterClockwise
Default: `false`

Whether or not you want the gauge to be drawn counterClockwise. I'm not sure why this would be useful, but if you find it to be all the better.

### x
Default: `canvas.width/2`

The x location (in pixels) of the center of the gauge. Defaults to the middle of the canvas.

### y
Default: `canvas.height/2`

The y location (in pixels) of the center of the gauge. Default to the middle of the canvas.

### running
Default: `true`

Whether the gauge is currently animating. Set this to false if you will start it later with `gauge.thaw`.

## License
The MIT License (MIT)

Copyright (c) 2014 Jayshua Nelson

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: Jayshua/Just-the-Gauge

repo_name: Jayshua/Just-the-Gauge


text:
# PDF Report Gen for VMware Secure State

### This repo includes a python script that can be used to generate compliance report in PDF format for VMware Secure State

#### The repo uses publicly available APIs for Secure State - api.securestate.vmware.com

#### Requirements

* Works on both Linux and Windows

1. virtualenv (Optional but recommended)
2. Python3.7 or higher
3. pip3
4. Run `pip3 install -r requirements.txt`

#### Generating Report

1. Modify the configuration file based on your requirements. The file should be `.json` format.

Here are some sample config files.

* Sample 1 - config.json

```json
{
    "org_name":"Test Inc",
    "config":{
        "providers": ["AWS", "Azure"],
        "severity": ["High", "Medium", "low"],
        "cloudTags":{},
        "cloudAccountIds":["All"]
    }
}
```

* Sample 2 - config_2.json

```json
{
    "org_name":"Demo Inc",
    "config":{
        "providers": ["AWS"],
        "severity": ["High"],
        "cloudTags":{"alpha.eksctl.io/cluster-name": ["acme-rds"], "owner":["developer"]},
        "cloudAccountIds":["12345679012", "22325145250"]
    }
}
```

2. Obtain the `Refresh Token` from CSP portal and set the environment variable

```export REFRESH_TOKEN=<your_token_here>```

3. Run the command from cli. Configuration file name and output file name are required arguments.

```python3 generate.py --config config.json --output-file vss_report```

4. Run `python3 generate.py -h` to get help and description

#### Refer to the License file for more details

MIT License

Copyright (c) 2020 Shrivatsa Upadhye

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: ishrivatsa/pdf-report-gen

repo_name: ishrivatsa/pdf-report-gen


text:
The playbook targets specific PrintNightmare rules written by Cortex XDR for both vulnerabilities:
[CVE-2021-1675 LPE](https://nvd.nist.gov/vuln/detail/CVE-2021-1675)
[CVE-2021-34527 RCE](https://nvd.nist.gov/vuln/detail/CVE-2021-34527)

This playbook includes the following tasks:
- Containment of files, endpoints, users and IP Addresses
- Enrichment of indicators
- Data acquisition of system info and files using Cortex XDR
- Eradicating compromised user credentials

** Note: This is a beta playbook, which lets you implement and test pre-release software. Since the playbook is beta, it might contain bugs. Updates to the pack during the beta phase might include non-backward compatible features. We appreciate your feedback on the quality and usability of the pack to help us identify issues, fix them, and continually improve.

## Dependencies

This playbook uses the following sub-playbooks, integrations, and scripts.

### Sub-playbooks

* Account Enrichment - Generic v2.1
* Endpoint Enrichment - Generic v2.1
* Cortex XDR - Isolate Endpoint
* Block IP - Generic v3
* Threat Hunting - Generic

### Integrations

* CortexXDRIR

### Scripts

* SearchIncidentsV2

### Commands

* ad-disable-account
* enrichIndicators
* xdr-get-incident-extra-data

## Playbook Inputs

---

| **Name** | **Description** | **Default Value** | **Required** |
| --- | --- | --- | --- |
| IsolateEndpointAutomatically | Whether to isolate the endpoint automatically  | False | Optional |
| DisableAccountAutomatically | Whether to disable the account automatically  | True | Optional |
| BlockIPAutomatically | Whether to block the IP Address automatically  | True | Optional |
| EnrichAutomatically | Whether to run indicators auto enrichment automatically  | True | Optional |
| UserVerification | Possible values: True/False.
Whether to provide user verification for blocking IPs.

False - No prompt will be displayed to the user.
True - The server will ask the user for blocking verification and will display the blocking list. | False | Optional |

## Playbook Outputs

---
There are no outputs for this playbook.

## Playbook Image

---

![Cortex XDR - PrintNightmare Detection and Response](../doc_files/Cortex_XDR_-_PrintNightmare_Detection_and_Response_6_5.png)

repository: demisto/content

gha_language: Python

gha_license_id: MIT

repo_name: demisto/content


text:
# vagrant-base

Uses packer to build base images for use with vagrant.  The build boxes are available through [Vagrant Cloud](https://vagrantcloud.com/playlist).

## Requirements

* packer
* vagrant

repository: playlist/vagrant-base

repo_name: playlist/vagrant-base


text:
---
title: Game Over
subtitle: The game over screen will display a various bat facts.
image: https://raw.githubusercontent.com/atomsspawn/BatMonFeeding/master/assets/img/GameOverSS.png
alt: Shirts on a hanger

caption:
  title: Game Over
  subtitle: Bat Fact
  thumbnail: https://raw.githubusercontent.com/atomsspawn/BatMonFeeding/master/assets/img/GameOverSS.png
---
BatMon Feeding Frenzy uses a video game to diseminate accurate information about bats and their habitats to counter misinformation regarding bats to held alliviate their persecution.

{:.list-inline}
- Date: January 2021

repository: atomsspawn/BatMonFeeding

repo_name: atomsspawn/BatMonFeeding


text:
---
title: Classfinder
date: 2018-12-10 12:16:00 Z
thumbnail_image: "/uploads/classfinder%20logo.png"
website: https://www.classfinder.org.uk/
---

Class Finder is designed specifically for fitness instructors to list their group exercise classes. Listing your classes on Class Finder automatically includes them in the Class Finder search and you can also choose to share your classes as open data.

 If you represent a group exercise organisation you can [email us](mailto<EMAIL_ADDRESS>to discuss other options.

extension: markdown

gha_language: HTML


text:
---
layout: page
title: ""
---

### Eggplant Stew (Kashk o Bademjan)

I have made this dish a few times for people from around the globe, and everyone has loved it!

*Ingredients*

- 3 large eggplants
- 1 cup walnut pieces
- 1/2 large onion
- 3 garlic cloves
- 1 table spoon dried mint
- 1/2 cup sour cream
- 3 table spoons neutral oil (canola, subflower, etc)
- Salt and pepper
- (Optional) Tiny amount of Saffron
- (Optional) A handful of fresh mint leaves

*Preparation*

- Peel eggplants, cut them along in half, and add a bit of salt all around. Leave eggplants like this while you prepare the rest of the ingredients.
- Chop the onion in small pieces.
- Chop the garlic cloves in tiny pieces, or (better) mince them.
- Crush walnuts using a grinder or mortar and pestle,  but not too much.

*Cooking*

- (Pan 1) Heat two table spoons of oil and add chopped onions. Fry onions on medium heat until they are light and golden (~20-30min). Add minced garlic and dried mint to onons, and fry for another 2-3 min. Turn the heat off.
- (Pan 2) While Pan 1 is cooking, in a separate pan add the eggplant pieces with 1/2 cup watter and 1/2 table spoon of oil. Cover and cook on medium-high heat. You need to frequently check this pan. Flip the eggplants, and add more water if water in the pan has evaporated. Continue cooking until eggplants become tenter and "smashable" (~ 30 min).
- Smash the eggplants in Pan 2, and then add chopped walnuts, content of Pan 1, and two cups of water to it. Reduce heat to medium-low, cover and cook for 30 min. Add sour cream and continue cooking for another 15-30 min. Stir occaisionally, and add more water if necessary.
- (Optional) Grind saffron using mortar and pestle, and add 1/4 cup hot water to it. Cover and let it brew for 10 min. Add brewed saffron to the stew during the last 5 minutes of cooking.
- Garnish with fresh mint leaves, and serve with fresh bread.


text:
# PlayerPrefsPlus for Unity

If you want UnityEngine.PlayerPrefs that is type and name safety by binding Property and Field of Class,
this package will help you!

## Installation via UPM

Open <project>/Packages/manifest.json, add the package in the list of dependencies.
```json
{
  // ...
  "dependencies": {
    "dev.r01.playerprefsplus": "https://github.com/r01hee/PlayerPrefsPlus.git",
    // ...
  }
  // ...
}
```

## License
[MIT license](LICENSE)


text:
---
layout: post
title: 'Migration from SVN to Git in a real-world environment: A comprehensive retrospective'
---

### Termin

Der Vortrag findet am 25.06.2014 um 19:00 Uhr in der Uni Mannheim A5, 6 im Raum C013 statt [Anfahrtsbeschreibung](/getting-there).

### Abstract

There is a large variety of commercial and open-source tools that promise almost effortless migration from SVN to Git. Provided, of course, that the structure of the repositories does not have to change (much). But when the requirements of a migration grow to encompass drastic changes in the structure of the repositories, in the build infrastructure as well as an revamp of almost the entire software development process of a company, things get really interesting really fast. This talk will present and discuss the technological, managerial and organizational challenges and solutions of the ambitious and successful migration from SVN to Git at fluid Operations.
The talk will be held in English.

### Bio

Michele Mancioppi is a software engineer at SAP, where he keeps himself busy with Java, JavaScript, SAP UI 5 and HTML5 development. A few months ago, he got the perfect opportunity to spread his passion for Git, Gerrit and SCRUM inside fluid Operations, a virtualization management company based in Walldorf.

gha_language: CSS

gha_license_id: NOASSERTION


text:
# Responsive-Portfolio

* Create a responsive porfolio design using independently tailored media queries to fit different relative screen sized
* Responsiveness allows for screen adaptation - the porfolio will adapt to any screen size and device orientation
* CSS will be updated for smoother responsiveness

## Getting Started

Follow the project link below to explore the page!

### Prerequisites

The page can be run from any browser, preferably on Google Chrome!

# Deployed Project Link
<!-- make a link to the deployed site -->

[Responsive Portfolio](https://sajeelmalik.github.io/Responsive-Portfolio/)

# Image Preview of Bootstrap Portfolio
<!-- take a picture of the image and add it into the readme  -->
![Responsive Portfolio](https://raw.githubusercontent.com/sajeelmalik/Responsive-Portfolio/master/Responsiveness-Portfolio.JPG)

## Technology Used

* HTML5 - including meta viewport
* CSS3 - including media queries

# Code Snippets
<!-- put snippets of code inside ``` ``` so it will look like code -->
<!-- if you want to put blockquotes use a > -->

Media queries allow for responsive templates for multiple screen sizes. Some relevant CSS media query implementations are below, adapted for potential mobile use:
```
@media screen and (max-width:640px) {

  #logo {
    width: 100%;
  }

  nav {
    margin-right: 20px;
  }

  footer{
      position: relative;
  }

  .work {
    float: none;
    margin: 10px;
    height: 450px;
    width: 450px;
    }
}

```

## Authors

* **Sajeel Malik** - *Initial work* - [GitHub](https://github.com/sajeelmalik)

## License

This project is licensed under the MIT License - see the [LICENSE.md](LICENSE.md) file for details

repository: sajeelmalik/Responsive-Portfolio

repo_name: sajeelmalik/Responsive-Portfolio


text:
# TuneIn 🎶
This is a javascript project developed with VueJs.

Simple and elegant music discovery app

## Getting Started 🚀

- Clone the repo
- Install the dependicies with ``` npm install```
- Start the development server with ``` npm run dev ```
 The App should be running on localhost port 8080

## Preview 📸
### https://tunein.netlify.com/

## Support me 👊

⭐ this repo if you like it.

Buy me a cup of coffee ☕:

Thank you in advance 👍

## Contact me 📧
#### Email<EMAIL_ADDRESS>#### Website : https://bouaggadmoez.netlify.com/

repository: ayemitibo/tuneIn

repo_name: ayemitibo/tuneIn


text:
# Deep strawberry
Detecting strawberries from a custom dataset using [Mask RCNN](https://github.com/matterport/Mask_RCNN).

![strawberry](https://raw.githubusercontent.com/asyaf/deep_strawberry/master/customImages/train/strawberry%20(1).jpg)

Training was done using [Google Colab](https://colab.research.google.com).


text:
# sakurasaku frontend

## Project Structure

* src/typescript: TypeScript source files
* src/assets: static files
* dist: Chrome Extension directory
* dist/js: Generated JavaScript files

## Setup

```
npm install
```

## Build in watch mode

### terminal

```
npm run watch
```

### chrome debug

assign ```frontend/dist``` as chrome browser extension

when you modified something while u develop and willing to see the result, just refresh the extension

repository: mizuirorivi/sakurasaku

branch_name: refs/heads/main

gha_language: TypeScript

repo_name: mizuirorivi/sakurasaku


text:
---
title: "Data Types"
date: 2020-10-30T10:23:58-04:00
---

Oba does not support classes in the same way that object-oriented languages do.
Instead oba supports "Data types" which are sort of like Python's named
tuples. A data type has a _family_ along with a number of named _constructors_
for the type. For example:

```
data Cycle = Bicycle | Motorcycle color
```

The above example is a simple definition of a `Cycle` data type family. A
`Cycle` can be created using either of the two constructors `Bicycle` and
`Motorcycle`. The `color` name above represents a parameter for the
`Motorcycle` constructor.  It's important to note that `color` is _not_ the
_name_ of a field, it is just a placeholder that tells Oba, "The Motorcycle
constructor requires one argument". The name `color` is only symbolic, and
may indicate to readers that a string representing the color of the motorcycle
should be held in that field.

## Instances

Instances are unique occurences of data types. These are similar to instances in
object-oriented programming, except they do not have methods; They are just
ordered collections of values belonging to a particular data type family.

Here's an example of how to create a `Cycle` using either constructor:

```
let bicycle = Bicycle()
let motorcycle = Motorcycle("Red")
```

If you print an instance, you'll see its data type family, constructor, and the
fields that it contains:

```
system::print(Motorcycle("Red")) // Prints: (Cycle::Motorcycle,Red)
```

## Pattern Matching

Data types can be used as patterns in `match` expressions:

```
let color = match motorcycle
  | Bicycle          = "grey"
  | Motorcycle color = color
  ;

system::print(color) // Prints: "Red"
```

For more information on pattern-matching, see [Pattern Matching].

[Pattern Matching]: {{< relref path="pattern_matching.md" >}}

repository: oba-lang/oba

gha_language: C

repo_name: oba-lang/oba


text:
# Core

A core is built by placing any number of assemblies into any position within the core.
It is created using a YAML file, which can be found in `fridge/data/core` and requires four variables in addition to n number of assembly positions.
Table 1 shows the requirements for a core file.

Table 1. Variables for Core YAML file.

|Variable Name   | Variable Type | Unit | Example|
|----------------|---------------|------|--------|
|Name  | string | -- | TestCore|
|Vessel Thickness | float | cm | 10.0|
|Vessel Material | string | -- | HT9|
|Coolant Material | string | -- | LiquidNa|
|Assembly Positions† | dictionary | str: str | 01A01: TestAssembly|

† A core will typically have multiple assemblies.

`Name` is a string used to denote the name of the core.
`Vessel Thickness` is a float do denote the thickness of the vessel both axially and radially.
`Vessel Material` is a string used to create a material for the reactor vessel.
`Coolant Material` is a string used to create the coolant for the reactor vessel.
**Note:** This will override any coolant material assigned to an assembly.
`Assembly Position` is used to describe each assembly in the core, and what assembly goes there.
**Note:** While the user can create as many assemblies as they wish in a core, MCNP only allows 9999 cells in a single model, which will limit the number of assemblies.

The first entry is a five character string which broken into a triplet.
The first two number denote the ring, the letter denotes the hextant, and the last two numbers denote the number of assemblies off the hextant axis.
For example, 05A03 is in ring 5, hextant A, and 3 assemblies off the axis.
Figure 1 shows the nomenclature used to describe each position.
Figure 2 shows an plan and elevated view of a core with two rings, where the center assembly is a smear and the outer assemblies are all fuel.

Figure 1. Description of assembly positions.

![Core](Figures/FullCore.PNG)

Figure 2. Simplified FRIDGe core.

![Core](Figures/SimpleCore.png)

repository: ryanstwrt/FRIDGe

repo_name: ryanstwrt/FRIDGe


text:
---
layout: post
title: "Learning recursion in the wrong way"
description: ""
category: scip
tags: ["functional-programming fp scheme scip"]
---
{% include JB/setup %}

I've been reading **Structure and Interpretation of Computer Programs**(the one that has a wizard in the book cover). It's impressive how well-written it is and how it increments well from what I've been taught in other books and mainly at university.

![SCIP]({{ site.url }}/assets/images/scip.jpg)

At university, we refered recursion, recursive, anything that has the recur prefix as a function which calls itself. And also made some funny jokes such as "To understand recursion, you must understand recursion.". But that was it.

In programming books there's always a mention if the language supports tail call optimization, tail call. But it's usually pragmatic about what the concept of recursion. Every "recursive" example is usually about a function calling itself.

SCIP teaches you the basics of Scheme in the very first pages but then, uses the word "iteration" for a procedure that calls itself. Wat.

But then, later in the book, after you wrote a couple of "iterative" procedures, it raises up the recursion naming debate and litelly kills it. And then I wanted to share this in a blogpost, of course.

> In contrasting iteration and recursion, we must be careful not to confuse the notion of a recursive process with the notion of a recursive procedure. When we describe a procedure as recursive, we are referring to the syntactic fact that the procedure definition refers (either directly or indirectly) to the procedure itself. But when we describe a process as following a pattern that is, say, linearly recursive, we are speaking about how the process evolves, not about the syntax of how a procedure is written. It may seem disturbing that we refer to a recursive procedure such as fact-iter as generating an iterative process. However, the process really is iterative: Its state is captured completely by its three state variables, and an interpreter need keep track of only three variables in order to execute the process.

Small observation: If you need a bit more of context, you can read the whole reasoning [here](https://mitpress.mit.edu/sicp/full-text/sicp/book/node15.html).

This is also a sweet way to introduce about tail call optimization.


text:
# WPF Helpers

WPF helpers is set of classes and resources wrapped up in an assembly to get up to speed with a new WPF MVVM based project targeting .NET Framework 4.0. As this targets framework 4.0, should work with .NET 4+ as well (haven't tested it though). As of now this assembly provides below mentioned features.

* **CommandBase** is an abstract class which provides boilerplate implemention for commanding.
* **NotificationBase** is an abstract class which provides boilderplate implementation for raising notifications.
* **ViewModelBase** is an abstract class which provides boilerplate implementation for making view models. It has additional methods like GetView which searches and creates an instance of View and injects view model as DataContext, ShowDialog and HideDialog to show and hide a view as modal dialog respectively, IsInDesignMode property tells if a view is open in designer, etc.
* **RelayCommand** allows you to execute methods as commands. It allows callbacks and async execution.
* **AssemblyInformation** gives you metadata of passed in assembly's instance.
* **DirectoryWalker** lets you recursively traverse directories without running into stack overflows as its implementation relies on heap and not recursion.
* **PlatformInvoke** encapsulates certain methods which are not directly supported by .NET framework like run a program with user name and password, activate another window, get a window's handle, toggle a caret on textbox, hide a window, minimize a window, show a window, get public desktop directory, get start menu directory, select a folder, create a shortcut, etc.
* **SettingsManager** allows saving of settings in an encrypted file.
* **ZipStorer** allows compression and decompression of ZIP archives.
* **ColumnHeaderBehaivor** is a custom behavior to auto generate column headers of DataGrid based on annotation. It allows hiding of columns too.
* **PasswordBoxBindingBehavior** allows binding password of a password box to a string property.

This package is available via nuget, execute below mentioned command in nuget console.
```
Install-Package NullVoidCreations.WpfHelpers
```
# Licensing

Licensing is a component which developers can use in thier projects to incorporate machine bound licenses for their softwares. This package is available via nuget, execute below mentioned command in nuget console to include it.
```
Install-Package NullVoidCreations.Licensing
```

repository: hoangtamnguyen/WpfHelpers

repo_name: hoangtamnguyen/WpfHelpers


text:
### [CVE-2021-24165](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-24165)
![](https://img.shields.io/static/v1?label=Product&message=Ninja%20Forms%20Contact%20Form%20%E2%80%93%20The%20Drag%20and%20Drop%20Form%20Builder%20for%20WordPress&color=blue)
![](https://img.shields.io/static/v1?label=Version&message=3.4.34%3C%203.4.34%20&color=brighgreen)
![](https://img.shields.io/static/v1?label=Vulnerability&message=CWE-601%20URL%20Redirection%20to%20Untrusted%20Site%20('Open%20Redirect')&color=brighgreen)

### Description

In the Ninja Forms Contact Form WordPress plugin before 3.4.34, the wp_ajax_nf_oauth_connect AJAX action was vulnerable to open redirect due to the use of a user supplied redirect parameter and no protection in place.

### POC

#### Reference
No PoCs from references.

#### Github
- https://github.com/ARPSyndicate/cvemon
- https://github.com/ARPSyndicate/kenzer-templates

repository: trickest/cve

repo_name: trickest/cve


text:
# ὅπως.

<!-- Status: S2=NeedsReview -->
<!-- Lexica used for edits: BDAG, FFM, LN, A-S -->

## Word data

* Strongs: G37040.

* Alternate spellings:

.

* Principle Parts:

* Part of speech:

[Conjunction subordinating](http://ugg.readthedocs.io/en/latest/conjunction_subordinating.html),
[Adverb](http://ugg.readthedocs.io/en/latest/adverb.html).

* Instances in the New Testament: 53.

* All Scriptures cited: No

## Etymology:

* LXX/Hebrew glosses:

* Time Period/Ancient Authors:

* Related words:

* Antonyms for all senses

* Synonyms for all senses:

## Senses:

### Sense  1.0:

#### Definition:

how, in what way (a relative adverb of manner, pertaining to "how," "in what way," or "by what means," as in Matt. 22:15.  May indicate indefinite means, that is, "how" or "somehow," as in Luke 24:20)

#### Glosses:

how

#### Explanation:

a relative adverb of manner, pertaining to "how," "in what way," or "by what means" (as in Matt. 22:15)  May indicate indefinite means, that is, "how" or "somehow" (as in Luke 24:20)

#### Citations:

Relat. adv. of manner, as, how: c. indic.,
; ὅπως [τε](../G50370/01.md) [παρέδωκαν](../G38600/01.md) [αὐτὸν](../G08460/01.md) [οἱ](../G35880/01.md) [ἀρχιερεῖς](../G07490/01.md) [καὶ](../G25320/01.md) [οἱ](../G35880/01.md) [ἄρχοντες](../G07580/01.md) [ἡμῶν](../G14730/01.md),
; "and how the chief priests and our rulers delivered him," (ULT):
[Lk 24:20](Luk 24:20).

### Sense  2.0:

#### Definition:

in order that, that, so that, to the end that (a final clause denoting purpose or intention, as in Matt. 2:8)

#### Glosses:

in order that, that

#### Explanation:

a final clause denoting purpose or intention (as in Matt. 2:8)

#### Citations:

Conj., c. subjc. (in cl. also c. opt., indic.: so in [Mt 26:59](Mat 26:59), LT, Tr.), in order that, to the end that, that.  Final, denoting purpose or design (in which the original idea of modality has been merged): after pres., [Mt 6:2](Mat 6:2), al.; pf., [Ac 9:17](Act 9:17), al.; impf., [[Ac 9:2](Act 9:2)4](Act 9:24); aor., Ac 9:2, al.; plpf., [Jo 11:57](Jhn 11:57); fut., [Mt 23:35](Mat 23:35); imperat.,
; [ἀπαγγείλατέ](../G05180/01.md) [μοι](../G14730/01.md) ὅπως [κἀγὼ](../G25040/01.md) [ἐλθὼν](../G20640/01.md) [προσκυνήσω](../G43520/01.md) [αὐτῷ](../G08460/01.md),
; "tell me, so that I also may come and worship him," (ULT):
[Mt 2:8](Mat 2:8), al.; [ὅ. μή]() (M, Pr., 185), [Mt 6:18](Mat 6:18), [Lk 16:26](Luk 16:26), [Ac 20:16](Act 20:16), [I Co 1:29](1Co 1:29); [ὅ. πληρωθῇ](), [Mt 2:23](Mat 2:23) [8:17](Mat 8:17) [13:35](Mat 13:35); [ὅ. ἄν]() (Bl., § 65, 2; WM, § 42, 5), [Lk 2:35](Luk 2:35), [Ac 3:19](Act 3:19) [15:17](Act 15:17), [Ro 3:4](Rom 3:4) (cf. [Ge 12:13](Gen 12:13), [Ps 59:7](Psa 59:7), [I Mac 10:32](1Macc.10.32), al.).

### Sense  2.1:

#### Definition:

that (used after verbs of asking, exhorting, or beseeching that, as in Matt. 9:38)

#### Glosses:

that

#### Explanation:

used after verbs of asking, exhorting, or beseeching that (as in Matt. 9:38)

#### Citations:

After verbs of asking, exhorting, etc.:
; [δεήθητε](../G12100/01.md) [οὖν](../G37670/01.md) [τοῦ](../G35880/01.md) [Κυρίου](../G29620/01.md) [θερισμοῦ](../G23260/01.md), ὅπως [ἐκβάλῃ](../G15440/01.md) [ἐργάτας](../G20400/01.md) [εἰς](../G15190/01.md) [τὸν](../G35880/01.md) [θερισμὸν](../G23260/01.md) [αὐτοῦ](../G08460/01.md),
; "Therefore urgently pray to the Lord of the harvest, so that he may send out laborers into his harvest," (ULT):
[Mt 9:38](Mat 9:38), [Lk 7:3](Luk 7:3), [Ja 5:16](Jas 5:16), al. (in late writers its place is often taken by the correl. [πῶς](), q.v.).

repository: mandolyte/uw-obsidian

repo_name: mandolyte/uw-obsidian


text:
# The Econometrics of Halloween

![](./images/halloween-1.png)

[![](../../research/images/new-button.png)](https://apps.axibase.com/chartlab/5ffd61e3#fullscreen)

## Keywords

`alert-expression`, `min-range`, `max-range`, `min-range-right`, `max-range-right`, `axis`, `legend-value`, `header-style`, `markers`

## Overview

It turns out that the family member who insists on buying their Halloween candy after the actual holiday, but in the year before may be on to something.

Federal Reserve economic metrics show that CPI value for candy and chewing gum is wont to increase sharply around the holiday seasons: not just Halloween but New Year's Eve as well. This increase is not met with an analogous increase in PPI value during the same months. As such, producers are not spending more to generate product, but are seeing a larger than normal return from their products.

## Spooky Spikes in Holiday Prices

The time charts below track monthly CPI value for candy and chewing gum for the most recent three years. The maximum value is highlighted with an [`alert-expression`](https://axibase.com/docs/charts/widgets/shared#alert-expression).

![](./images/halloween-3.png)

[![](../../research/images/new-button.png)](https://apps.axibase.com/chartlab/582c8bd3#fullscreen)

Notice that the greatest value for the cost of candy and sweets always falls during the fourth quarter of the year, suspiciously close to All Hallows' Eve? Uncanny!

## A Vampire's Ball

Using the [`MonthlyPercentChange`](https://axibase.com/docs/charts/syntax/udf.html#examples) function from the [user-defined function](https://axibase.com/docs/charts/syntax/udf.html) library `fred.js`, the monthly percent change value for each metric is calculated.

![](./images/halloween-4.png)

[![](../../research/images/new-button.png)](https://apps.axibase.com/chartlab/7a8435b4#fullscreen)

Each series is assigned a color, visible in the widget legend, and stacked with other series to show combined total increase or decrease with respect to percent value. The Halloween candy-price creep is demonstrated perfectly in 2015, which shows an increase in the CPI index for candy and chewing gum in August, followed by no change in September, another increase in October, a slight decrease the following month in November, and a final increase in December. Candy CPI value decreases each month in succession until the second-largest candy-themed holiday in the United States, Easter.

![](./images/halloween-5.png)

[![](../../research/images/new-button.png)](https://apps.axibase.com/chartlab/f398dc53#fullscreen)

The good news is that during the last three years, despite seasonal increases, the overall price of products tracked by the Federal Reserve has not meaningfully increased.

## Conclusion

The anecdotal phenomena observed by unscrupulous savers across the country has real economic data to back it up. Those concerned with saving a little extra money this season can refer to the Federal Reserve database [FRED](https://fred.stlouisfed.org/) for further economic data to reinforce their holiday habits.

<big>Happy Halloween from Axibase!</big>

repository: nmoiseykin/atsd-use-cases

repo_name: nmoiseykin/atsd-use-cases


text:
# Laravel Application TEst

This is Laravel application test

## Features

- Product Category Management
- Product Management
- Integrated with [Stripe](https://stripe.com/) Checkout.

## Installation
```bash
composer install
```

If your laravel application doesn't generate a key automatically, run the following command to generate your laravel application key
```bash
php artisan key:generate
```

## Environment variables
In your *.env* make sure your setup your variables

### Setup up database
* DB_DATABASE
* DB_USERNAME
* DB_PASSWORD

### Setup up MAIL
- MAIL_HOST
- MAIL_USERNAME
- MAIL_PASSWORD
- MAIL_ENCRYPTION

### Setup Stripe Keys
- STRIPE_KEY
- STRIPE_SECRET

## Create your database tables
```bash
php artisan migrate
```

## Create default user

You need to create the default user for you to use the backend
Run the following command

```bash
php artisan db:seed
```

The default credentials are<EMAIL_ADDRESS>and *password*

## Running the Application
```bash
php artisan serve
```

## Running your queue worker
```bash
php artisan queue:worker
```

## Contributing
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

Please make sure to update tests as appropriate.

## License
[MIT](https://choosealicense.com/licenses/mit/)

repository: panda-zw/laravel-test-application

repo_name: panda-zw/laravel-test-application


text:
# PhotoSelector

Photo Selector for Android device. Support single choice and multi-choice.

###ART
![Catalogy1](art/demo1.jpg) ![Preview](art/demo2.jpg) ![Select1](art/demo3.jpg)

-------------------

###Quick Start

* Step 0 Add module selectorPhotoLibrary as your dependence.

		dependencies {
	   		 compile project(':selectorphotolibrary')
		}

* Step 1

			ImgOptions options = new ImgOptions(selectedMode, showCamera);
            startActivityForResult(SelectedPhotoActivity.makeIntent(MainActivity.this, options), REQUEST_IMAGE);

* Step 2
Receive result

		    @Override
            protected void onActivityResult(int requestCode, int resultCode, Intent data) {
                super.onActivityResult(requestCode, resultCode, data);
                if (requestCode == REQUEST_IMAGE) {
                    if (resultCode == RESULT_OK) {
                        ArrayList<String> pathList = data.getStringArrayListExtra(EXTRA_DATA);
                        for (String path : pathList) {
                            mResultText.append(path);
                            mResultText.append("\n");
                        }
                    }
                }
            }

---
预想
#新特性
现在缺的是截图部分的内容，以前有过一个库，考虑整合起来。

# GalleryFinal

今天看到一个更强大的库， 地址：https://github.com/pengjianbo/GalleryFinal

### Thanks

base: [MultiImageSelector](https://github.com/lovetuzitong/MultiImageSelector)

use : [TouchImageView](https://github.com/MikeOrtiz/TouchImageView)

### License

> The MIT License (MIT)
>
> Copyright (c) 2015 Nereo
>
> 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.

repository: hqye/PhotoSelector

repo_name: hqye/PhotoSelector


text:
# Validator Resource Center for Kusama (Phase 2)

The Validator Resource Center for Kusama aims to provide quantitative and qualitative data about validators performance and help nominators to choose their best nomination set.

Phase 2 of the Validator Resource Center and Ranking Website (VRC) further improves upon the ranking method from Phase 1, by making the scoring model more customizable and thereby better representing the user’s preferences. Also, the VRC score is now a major metric in the manual selection process. Additionally, we include several new metrics (e.g. performance based on historic era data) and thereby reduce the load of information on nominators. A new filtering technique helps to reduce the overall set of validators based on their quantitative properties and make it easier for nominators to make an appropriate selection.

Aside from that, Phase 2 introduces a staking dashboard, which gives important visual and numerical information about the network, allowing comparisons of sets to the state of the network. It will be even possible to import your current nominations (via the polkadot.js extension) and check whether some critical events happened to nominated validators (e.g., an increase of commission or a slash).

## Project status

- Milestone 1: Completed
- Milestone 2: In progress

## Project funded by Kusama Treasury

The development of this project is being funded by Kusama Treasury, you can review the full proposal [here](https://docs.google.com/document/d/14pvmbMMzNAqVzQkoXi_nRS-1wDti2y03X4VqOp9nNTw).

A link to the last proposal for Phase I can be found [here](https://kusama.polkassembly.io/motion/217).

Previous discussion about this proposal can be found [here](https://kusama.polkassembly.io/post/427).

Please leave your comments!

## Code of conduct for the implementation

We are aware that this project bears a large responsibility towards nominators and validators. Therefore, every decision on this implementation follows these principles as much as possible:

- Act in the interest of the network as much as possible.
- Act in the interest of the nominator whenever possible.
- Objectivity on validators selection as much as possible. Don't discriminate against individual validators.
- We value user preferences and try to give them as much freedom as possible while maintaining the trade-off with usability.
- You can review the full proposal here. Please leave your comments!


text:
### [CVE-2021-0639](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2021-0639)
![](https://img.shields.io/static/v1?label=Product&message=Android&color=blue)
![](https://img.shields.io/static/v1?label=Version&message=n%2Fa&color=blue)
![](https://img.shields.io/static/v1?label=Vulnerability&message=Information%20disclosure&color=brighgreen)

### Description

In multiple functions of libl3oemcrypto.cpp, there is a possible weakness in the existing obfuscation mechanism due to the way sensitive data is handled. This could lead to local information disclosure with no additional execution privileges needed. User interaction is not needed for exploitation.Product: AndroidVersions: Android SoCAndroid ID: A-190724551

### POC

#### Reference
No PoCs from references.

#### Github
- https://github.com/ARPSyndicate/cvemon
- https://github.com/Avalonswanderer/widevinel3_Android_PoC
- https://github.com/sailomk/widevinel3_Android_PoC


text:
---
layout: post
title: "Architecture Saturday Part IV: Asia"
date: 2012-06-03 19:49
comments: true
categories: Life
---

Everyone is special. The Mayans were the only literate people in
Mesoamerica. They had the wheel, but did not use it to pull stuff.
Instead, they literally broke their backs building this:

{% img center http://1.bp.blogspot.com/-aVwOx50Aq48/TbhJUD8mI3I/AAAAAAAAAGM/WgyE6UT9ryE/s1600/maya.jpg %}

The Chinese had access to stone and the ability to
build arches. However, they chose to use timber and perfect the
carpenter's art (part of the reason why "The Great Plains" are not "The
Great Forest").

{% img center http://www.topchinatravel.com/pic/china-guide/architecture/chinese-architecture-11.jpg %}

Interestingly, they invented the **Modular System**, which specifies
exactly how to space columns in Chinese Architecture.

Mean time, the Dalai Lama was chilling in this little home:

{% img center http://www.presscluboftibet.org/UserFiles/potala_palace.jpg %}

I think it's really interesting the Japan shuts itself in for a century,
and comes out with Noh Theatre (which is not related to NoSQL) and some
of the most pristine architecture of all time. Meet the Himeji Castle:

{% img center http://4.bp.blogspot.com/-fqblr3-JaL8/Ty3eXNY8DQI/AAAAAAAABsQ/Nau0U87Kpcg/s1600/himeji-castle-himeji-japan.jpg %}

It's easy to judge China for their lukewarm support of human rights.
It's much harder to understand the isolationism and culture their
beliefs are grounded in. However, architecture can provide a bathroom
window into their collective psyche.

For instance, while the Romans protected their empire by building a
top-knotch army and patrolling distant lands, China surrounded its
empire with a wall you can see from space:

{% img center http://4.bp.blogspot.com/-astvYiL18Qs/TsajulGsAaI/AAAAAAAADpk/3Wq4uA8otnE/s1600/Great-Wall-of-China-Majestic-and-Wonderful.jpg %}

The good news is while we all have our bad apples, most people are like
the Fonzie. Cool.

Take the Indian emperor Shah Jahan, who built the Taj Mahal in the
memory of his dead wife:

{% img center http://tajmahalprescott.com/wordpress/wp-content/themes/modularity-lite/images/slideshow/image5.jpg %}

I'll end this spiritual blog post with a quote by Ashoka the Great:

{% blockquote Ashoka the Great %}
It is forbidden to descry other sects; the true believer gives honor to
whatever in them is worthy of honor.
{% endblockquote %}


text:
### [CVE-2023-27416](https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2023-27416)
![](https://img.shields.io/static/v1?label=Product&message=Decon%20WP%20SMS&color=blue)
![](https://img.shields.io/static/v1?label=Version&message=n%2Fa%3C%3D%201.1%20&color=brighgreen)
![](https://img.shields.io/static/v1?label=Vulnerability&message=CWE-79%20Improper%20Neutralization%20of%20Input%20During%20Web%20Page%20Generation%20('Cross-site%20Scripting')&color=brighgreen)

### Description

Auth. (admin+) Stored Cross-Site Scripting (XSS) vulnerability in Decon Digital Decon WP SMS plugin <= 1.1 versions.

### POC

#### Reference
No PoCs from references.

#### Github
- https://github.com/fkie-cad/nvd-json-data-feeds


text:
[![Packagist](https://img.shields.io/packagist/v/atbox/invi.svg?style=flat-square)](https://packagist.org/packages/atbox/invi)
[![Packagist](https://img.shields.io/packagist/dt/atbox/invi.svg?style=flat-square)](https://packagist.org/packages/atbox/invi)

# Invi Package for Laravel 5 #

This package helps you to create a simple invitation system for your signup or other services.
[https://packagist.org/packages/atbox/invi]

## Features

- Generate an invitation code for a given email
- Set an expiration date on invites
- Activate or deactivate invites
- Use, unuse or delete invites

## Installation

Laravel 5.4:
```
composer require atbox/invi ^2.0
```

Laravel 5.0 up to 5.3:
```
composer require atbox/invi ^1.0
```

Execute:
```
composer update
```

Add this to config/app.php end of providers array:
```php
Atbox\Invi\InviServiceProvider::class,
```

Add this to config/app.php end of aliases array:
```php
'Invi' => Atbox\Invi\Facades\Invi::class,
```

Publish the migration file:
```php
php artisan vendor:publish
```

Run the migration command:
```php
php artisan migrate
```

## Example

```php
<EMAIL_ADDRESS>"2 day", true); // Generate Invitation

if(Invi::check("f22c597305eb1800", "example@domain.com"))
    Invi::used("f22c597305eb1800", "example@domain.com");
else
    echo Invi::status("f22c597305eb1800", "example@domain.com");
```

## Functions

### generate

Generate an invitation code
- Arguments:
	- email
	- expiration date, accepts timespans like: 2 years | 2 months | 13 days | 1 hour | 23 min | 40 sec
	- active
- Returns:
	- a JSON array of all invitation information

```php
<EMAIL_ADDRESS>"2 day", true); // Generate Invitation
```
- Output:

```php
{"code":"f22c5973ebbcca99","email":"example@domain.com","expiration":"2013-05-10 15:58:41 ","active":true,"used":"0"}
```

### check

Validate invitation code
- Arguments:
	- invitation code
	- email
- Returns:
	- boolean

```php
Invi::check("f22c597305eb1800", "example@domain.com");
```

### status

Return invitation code status
- Arguments:
	- invitation code
	- email
- Returns:
	- status: Active, Deactive, Used, Valid, Not Exist

```php
echo Invi::status("f22c597305eb1800", "example@domain.com");
```

### active

Activate an invitation
- Arguments:
	- invitation code
	- email

```php
Invi::active("f22c597305eb1800", "example@domain.com");
```

### deactive

Deactivate an invitation
- Arguments:
	- invitation code
	- email

```php
Invi::deactive("f22c597305eb1800", "example@domain.com");
```

### used

Make an invitation used
- Arguments:
	- invitation code
	- email

```php
Invi::used("f22c597305eb1800", "example@domain.com");
```

### unused

Make an invitation unused
- Arguments:
	- invitation code
	- email

```php
Invi::unused("f22c597305eb1800", "example@domain.com");
```

### delete

Delete an invitation
- Arguments:
	- invitation code
	- email

```php
Invi::delete("f22c597305eb1800", "example@domain.com");
```

## License

The MIT License (MIT)

Copyright (c) 2016 Atbox

http://atbox.io
https://github.com/atbox/invi-l5

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.

http://opensource.org/licenses/MIT

gha_language: PHP


text:
[![Build Status](https://travis-ci.com/pulumi/pulumi-awsx.svg?token=eHg7Zp5zdDDJfTjY8ejq&branch=master)](https://travis-ci.com/pulumi/pulumi-awsx)

# Developing AWSX components

## Prerequisites

Essentials:

- NodeJS
- Go
- Make

For building the SDKs:

- Dotnet
- Python

## Project Structure

- `awsx`: the provider, written in Typescript
- `awsx-classic`: the original typescript-only version of AWSX
- `examples`: multi-lang examples which are executed as acceptance tests
- `examples-classic`: examples of aws-classic (no longer run as acceptance tests)
- `schemagen`: Go program for generating the schema and SDKs
- `sdk`: Generated SDKs in each language

## Development Workflow

### Common Targets

- `make` lints, builds and runs unit tests
- `make dev` tests and build the provider and builds only the nodejs SDK
- `make build` tests and build the provider and all SDKS
- `make clean` removes all build artifacts ready for a clean build
- `make test` runs all acceptance tests
- `make test Test=TEST_NAME` runs a single test

### Implementing New Components

The schema (`awsx/schema.json`) is generated by schemagen. The entry point is `schemagen/pkg/gen/schema.go`. Amend the go code to generate the schema for the component with its inputs, outputs and any relevant types. Run `make schema` to test your changes.

From the `awsx/schema.json` we generate provider types (`awsx/schema-types.ts`) which describe the interfaces that the provider must implement. Running `make provider` will automatically re-generate this as needed.

To implement a new provider resource:

1. Define a class for your resource in an appropriate folder which:

    - Inherits from the appropriate schema-types abstract class
    - Uses the schema-types 'Args' object for the constructor args
    - Sets all provider output members in the constructor

2. Register the new component implementation in `awsx/resources.ts`.

The SDKs are also generated from the `awsx/schema.json` using the `schemagen` program. This can be done by calling `make build`.

## Testing Workflow

Before testing, make sure you are authenticated with Pulumi and AWS in your terminal.

For running Typescript examples locally:

1. `make install_provider install_nodejs_sdk` - prep provider and SDK for local use
1. `cd examples/YOUR_EXAMPLE`
1. `yarn && yarn link @pulumi/awsx` - install dependencies, but use local version of
1. `PATH=~/YOUR_DEV_FOLDER/pulumi-awsx/bin/:$PATH pulumi up`

repository: pulumi/pulumi-awsx

repo_name: pulumi/pulumi-awsx


text:
---
layout: post

#event information
title:  "Report of Firefox Nightly Campaign"
cover: "../assets/WebCompat.png"
date:   2017-06-29

#event organiser details
organiser: "Fahima Zulfath"

categories: "blog"

---
 ![InUsesFxNightly]({{ site.url }}/assets/events/InUsesFxNightly.jpg)

During the month of May and June 2017, [Mozilla India](https://blog.mozillaindia.org/1801) have organised a campaign called
**India Uses Firefox Nightly**  especially for the developers of India to enjoy the pre-released version of Firefox. The main motto of this campaign is to create awarness about pre-release version available as Nightly and targeting more power users for nightly. Contributing for Nightly is the easy way to make Firefox more stable during its initial stage of development before getting released in the mainstream. Mozilla Tamilnadu community is very happy to be the part of this campaign and organised a event called "Firefox Nightly Campaign" at Salem on June 18, 2017.

![Invitation of Firefox Nightly Campaign]({{ site.url }}/assets/events/nightlyinvitation.jpg)

These event is organized with the objective to bring more power users for nightly and to provide platform for the students to develope and showcase their skills by contributing for Nightly were they can access to features in development months before they become establish in the mainstream, The event started with the following flow,

   * Introduction to Mozilla.
   * What is Firefox nightly?
   * Why we contribute in nightly?
   * Set yourself up with Firefox Nightly latest version.
   * Interesting tools in Nightly.
   * How to file bug in bugzilla for nightly issue.
   * Filing & Triaging Webcompat issues with Firefox Nightly.
   * Demonstration of other ways to contribution.
   * Swag distribution and Group photo.

 The event was very successful enough to attract as many as 15 contributors out of which we had 5 new contributors. Dhirajzilla contributors also joined with us to become a power user. During the event we had Hands-on session on triaging Webcompat issues after giving demos on reporting bugs in QA & Webcompat and their individual results can be seen in this ([etherpad](https://public.etherpad-mozilla.org/p/firefox-nightly-campaign-salem)). We had a great time organising the event in Salem. We would like to register our sincere thanks to everyone who volunteered for this event. Here is what our contributors from our campus club have to say about their experience they had during the event in a blog.

 * [Alwin Mathew.](http://alwinmathewm.blogspot.in/2017/06/experience-in-nightly-campaign-salem.html)
 * [Jai Vishnu.](http://jaivishnujc.blogspot.in/2017/06/firefox-contribution-experience_28.html?m=1)
 * [Pooraghavan.](http://raghavrk99.blogspot.in/2017/06/my-experience-at-firefox-nightly.html?m=1)

![Ending session with group photo]({{ site.url }}/assets/events/nightlygp.jpg)

**METRICS ACHIEVED:**
   * No of attendees at the event: 15
   * No of Firefox Nightly installed: 11 Laptops / 5 Mobile / 1 Tab
   * No of participants will contribute in Firefox Nightly after event: 6
   * No of people switchback to Firefox Nightly from other browsers: 8
   * No of bug filled in Webcompat: 2
   * No of blogs generated: 4
   * No of active contributor after the event: 5

repository: MozillaTN/Dhirajzilla

repo_name: MozillaTN/Dhirajzilla


text:
## lilkv-replicated

![artifact](https://github.com/dansimpson/lilkv-replicated/workflows/packages/badge.svg)
![test](https://github.com/dansimpson/lilkv-replicated/workflows/tests/badge.svg)

A replicated key value store with key spaces.

Goals:
 * Embeddable
 * Lightweight
 * Ideal for small data sets (fits in RAM)
 * Persistent / Crash Tolerant
 * Eventually consistent with repair

### Usage

```java
Cluster.Builder builder = new Cluster.Builder()
    .setBindHost("<IP_ADDRESS>", 10000)
    .setAdvertisedHost("<IP_ADDRESS>", 10000)
    .addSeedHost("<IP_ADDRESS>", 10000)
    .addSeedHost("<IP_ADDRESS>", 10000);

ReplicateKvStore store = new ReplicatedKvStore("/var/data/kv", builder);
store.start();
store.stop();

// ReplicatedKvStore must work with keyspaces, either a standard
// keyspace with byte[] keys and values, or a serde enhanced keySpace
ReplicatedKeySpace weapons = store.keySpace("weapons");
weapons.onPut((key, value) -> {
  // handle key, value byte[]
});
weapons.onDelete((key) -> {
  // handle key byte[]
});

weapons.delete("key".getBytes());

```

### Building

```
gradle clean test assemble
```

repository: dansimpson/lillibs

repo_name: dansimpson/lillibs


text:
# Using a Flipped Classroom in a Large Programming Course for Mathematicians

Talk given at [this workshop](http://mathsevents.cf.ac.uk/mathedworkshop/index.html).

repository: drvinceknight/speak

repo_name: drvinceknight/speak


text:
# Pager

## Accessibility
* Add apropriate labels and `aria-labels` form page items
* Structure pagination as a navigation and use a `nav` element
* Use `aria-current="page"` to mark active/current page in pager
* Use `disable` on buttons like previous or next which are not lead anywhere


text:
# dwm-statusline
small status display utility for dwm window manager

## Dependencies
- libxcb
- alsa-lib

## Usage
`make && ./dwm-statusline`

Tested on Arch Linux on Xiaomi Mi Notebook Air 13.3.

## status line
`<CPU Temperture>C b<Brightness>% <Is Charging?><discharging/charging rate>/<Battery>% <datetime>`

repository: glabra/dwm-statusline

repo_name: glabra/dwm-statusline


text:
---
id: spring-graphql-context
title: Generating GraphQL Context
---
`graphql-kotlin-spring-server` provides a Spring specific implementation of [GraphQLContextFactory](../graphql-context-factory.md) and the context.

* `SpringGraphQLContext` - Implements the Spring `ServerRequest` and federation tracing `HTTPRequestHeaders`
* `SpringGraphQLContextFactory` - Generates a `SpringGraphQLContext` per request

If you are using `graphql-kotlin-spring-server`, you should extend `SpringGraphQLContext` and `SpringGraphQLContextFactory` to maintain support with all the other features.

```kotlin
class MyGraphQLContext(val myCustomValue: String, request: ServerRequest) : SpringGraphQLContext(request)

@Component
class MyGraphQLContextFactory : SpringGraphQLContextFactory<MyGraphQLContext>() {
    override suspend fun generateContext(request: ServerRequest): MyGraphQLContext {
        val customVal = request.headers().firstHeader("MyHeader") ?: "defaultValue"
        return MyGraphQLContext(customVal, request)
    }
}
```

Once your application is configured to build your custom `MyGraphQLContext`, you can then specify it as function argument.
While executing the query, the corresponding GraphQL context will be read from the environment and automatically injected to the function input arguments.
This argument will not appear in the GraphQL schema.

For more details, see the [Contextual Data Documentation](../../schema-generator/execution/contextual-data.md).

## Federated Context

If you need [federation tracing support](../../schema-generator/federation/federation-tracing.md), you can set the appropiate [configuration properties](./spring-properties.md).
The provided `SpringGraphQLContext` implements the required federation methods for tracing, so as long as you extend this context class you will maintain feature support.

repository: ExpediaGroup/graphql-kotlin

gha_language: Kotlin

repo_name: ExpediaGroup/graphql-kotlin


text:
## Module Data.Ord

A module defining some useful types and instances surrounding the `Ord`
type class.

#### `invert`

``` purescript
invert :: Ordering -> Ordering
```

#### `comparing`

``` purescript
comparing :: forall a b. (Ord b) => (a -> b) -> a -> a -> Ordering
```

#### `Down`

``` purescript
newtype Down a
  = Down a
```

A newtype wrapper which provides a reversed `Ord` instance. This allows
you to do things like:

    > sortBy (comparing Down) [1,2,3]
    [3,2,1]

##### Instances
``` purescript
instance eqDown :: (Eq a) => Eq (Down a)
instance showDown :: (Show a) => Show (Down a)
instance ordDown :: (Ord a) => Ord (Down a)
```

#### `clamp`

``` purescript
clamp :: forall a. (Ord a) => a -> a -> a -> a
```

Clamp a value between a minimum and a maximum. For example:

    let f = clamp 0 10
    f (-5) == 0
    f 5    == 5
    f 15   == 10

#### `between`

``` purescript
between :: forall a. (Ord a) => a -> a -> a -> Boolean
```

Test whether a value is between a minimum and a maximum. For example:

    let f = between 0 10
    f (-5) == false
    f 5    == true
    f 15   == false

#### `min`

``` purescript
min :: forall a. (Ord a) => a -> a -> a
```

Take the minimum of two values. If they compare to `EQ`, the first
argument is chosen.

#### `max`

``` purescript
max :: forall a. (Ord a) => a -> a -> a
```

Take the maximum of two values. If they compare to `EQ`, the first
argument is chosen.

#### `Min`

``` purescript
newtype Min a
  = Min a
```

Provides a `Semigroup` based on the `min` function. If the type
has a `Bounded` instance, then a `Monoid` instance can be provided
too. For example:

    runMin (Min 5 <> Min 6) = 5
    mempty :: Min Ordering = Min GT

##### Instances
``` purescript
instance eqMin :: (Eq a) => Eq (Min a)
instance showMin :: (Show a) => Show (Min a)
instance ordMin :: (Ord a) => Ord (Min a)
instance semigroupMin :: (Ord a) => Semigroup (Min a)
instance monoidMin :: (Ord a, Bounded a) => Monoid (Min a)
```

#### `runMin`

``` purescript
runMin :: forall a. Min a -> a
```

#### `Max`

``` purescript
newtype Max a
  = Max a
```

Provides a `Semigroup` based on the `max` function. If the type
has a `Bounded` instance, then a `Monoid` instance can be provided
too. For example:

    runMax (Max 5 <> Max 6) = 6
    mempty :: Max Ordering = Max LT

##### Instances
``` purescript
instance eqMax :: (Eq a) => Eq (Max a)
instance showMax :: (Show a) => Show (Max a)
instance ordMax :: (Ord a) => Ord (Max a)
instance semigroupMax :: (Ord a) => Semigroup (Max a)
instance monoidMax :: (Ord a, Bounded a) => Monoid (Max a)
```

#### `runMax`

``` purescript
runMax :: forall a. Max a -> a
```

repository: telser/purescript-orders

repo_name: telser/purescript-orders


text:
# WPT Cookie consent

## Bypass Cookie Consent Banner

There are two main methods to bypass cookie consent banners / screens detailed below.

### 1. Click the button

Clicking the consent button is the easiest method, but means that you will have two steps by default. It is great for simulating the first-time user experience. You can combine the steps into one waterfall, or split them and set event names.

**Using `combineSteps`**

```js
combineSteps
navigate	https://www.harpersbazaar.com/
sleep 5
execAndWait	document.querySelector('#onetrust-accept-btn-handler').click()
```

**Using `setEventName`**

```js
setEventName	Homepage
navigate	https://www.harpersbazaar.com/
setEventName	AcceptCookies
execAndWait	document.querySelector('#onetrust-accept-btn-handler').click()
```

### 2. Set the cookie

Setting the consent cookie(s) emulates a repeat visitor experience and is my preference for testing holistic performance - including how consented scripts interact with page load. Note that consent cookies are normally time-limited, so a test run now may work but in a month you may need to update the timestamp / date in the cookie value.

Note that the cookie must be set on page origin, including protocol but excluding trailing slash. It is possible that a combination of cookies is required to clear the banner so it may take a few test runs. Use a fast connection and single-run first-view only tests to speed up the process!

Load the target page in an incognito / private window and accept cookies. Look at the cookies that are set against the first-party domain, you’re looking for any cookie names like `%consent%`

```
setCookie https://www.harpersbazaar.com OptanonAlertBoxClosed=2022-04-05T11:05:53.794Z
setCookie https://www.harpersbazaar.com OptanonConsent=isIABGlobal=false&datestamp=Tue+Apr+05+2022+12%3A05%3A54+GMT%2B0100+(British+Summer+Time)&version=6.32.0&hosts=&consentId=5810616d-5003-40e8-8d7c-37e4e957aac7&interactionCount=1&landingPath=NotLandingPage&groups=C0001%3A1%2CC0004%3A1%2CBG352%3A1%2CC0003%3A1%2CC0002%3A1%2CC0005%3A1&geolocation=%3B&AwaitingReconsent=false
navigate	https://www.harpersbazaar.com/
```

repository: radum/performance-testing-framework

repo_name: radum/performance-testing-framework


text:
# Senior dev mindset (that any (good) senior developer needs to follow)

## Senior profile
Senior devs are the devs that are required when the problem is to difficult. They have fluency in many different technologies and can adapt their knowledge to other technologies. In the foreign language domain, they have a C1+ level in at least one foreign language.

They can be project managers and macromanage an entire team. They know difficulties and limitations (technical or not) of the client and they tend to do whatever they can to eliminate these "problems".

They understand the tech skills of the team and are able to delegate work for each person individually. Knowing when to give good feedback or code review.

They know how important is quality control and their work is usually accepted in the first review (a rate that is more than 85%). Always including unit tests in their code base that reduce a lot the quantity of bugs.

In the backend, they have a good infrasctructure fluency. They know and apply the concepts of deployment automatization, capacity planning, security, tuning and perfomance.

They are open to teach other devs and give better ways to implement methods, or other solutions. With customers, they are excellent to find good solutions that have a high cost and benefit ratio.

They are always up to date with the software development world, knowing how to identify good devs or professionals.

They know that scaling is to improve the team productivity.

## 1

repository: gobrasa/developer-mindset

repo_name: gobrasa/developer-mindset


text:
# ros_python

## Introduction

`ros_python` is a simple example demonstrating how you can write a Webots controller that implements a ROS node in Python.
It is a pure Python implementation, including all the necessary Python libraries, so that no ROS installation is needed on the machine running the Webots simulation.
Therefore, it runs on Windows, Linux and macOS, straight out of the box.

## Setup

In order to run this example, you will need to:

1. Run [roscore](https://wiki.ros.org/roscore) on some machine.
It may be the same machine running Webots or a different one.

2. If running on a different machine, you should edit the `runtime.ini` file to define the `ROS_MASTER_URI` value to point to your machine running `roscore`:
You will have to replace `localhost` with the IP address of the machine running `roscore`.

3. Set environment variables:
```
export ROS_MASTER_URI=http://localhost:11311  # replace this URI with the actual URI of the machine running roscore)
export ROS_PACKAGE_PATH=kinetic/share
export ROS_LOG_DIR=ros_controller_log
```

4. Launch `ros_controller.py`.

5. From a different terminal or the GUI, launch Webots, open the `ros_python.wbt` world file and run it.

6. You should see the Thymio II robot moving forward and stop before colliding with the wall.

## Explanation

`ros_python.py` is the Webots controller that is running a ROS node using the `rospy` ROS client library.
This controller actually publishes the value of its front distance sensor in a ROS topic named "sensor".
It also listens to the "motor" ROS topic.
Whenever it receives a value on this "motor" topic, it will apply it to the motors of the Thymio II robot.

`ros_controller.py` is a standalone ROS node that listens to the "sensor" topic published by `ros_python.py`.
It publishes a ROS topic named "motor" on which it publishes the value of 9 (motor velocity).
When it reads a sensor value greater than 100 on the "sensor" topic, it will publish a value of 0 on the "motor" topic.
Thus, the robot will move forward until it faces an obstacle.

The `kinetic` folder contains a minimal subset of the ROS kinetic distribution allowing to run the `rospy` package on Windows.
Similarly, the `python` folder contains a couple of Python modules needed to run `rospy`.
Both folders were copied and adapted from [here](https://github.com/Wei1234c/ROS_node_on_Windows).

Once you understood the principles behind this very simple example, you will be able to extend it to a more complex setup that will fit the requirements of your ROS project.


text:
# wesnothd-docker
Battle for Wesnoth game server

## Building

    docker build -t wesnoth .

## Running

    docker run -p 15000:15000 -e PASSWD=admin wesnoth

Environments variables are:

- PASSWD: the admin password
- MOTD: the message of the day (default to Welcome to this game server)
- REPLAYS: true or false, defines whether the server will automatically save replays of games (default to true)
- THREADS: sets the maximum number of worker threads that will be created (default to 5)

repository: oalbiez/docker-wesnothd

repo_name: oalbiez/docker-wesnothd


text:
# General

LocalizedModelAttribute moved from `DbLocalizationProvider` to `DbLocalizationProvider.Abstractions` namespace

LocalizedResourceAttribute moved from `DbLocalizationProvider` to `DbLocalizationProvider.Abstractions` namespace

ResourceKeyAttribute moved from `DbLocalizationProvider` to `DbLocalizationProvider.Abstractions` namespace

Removed `DbLocalizationProvider.LocalizationProvider.Current` static property.

Moved `Translate(this Enum target, params object[] formatArguments)` to `LocalizationProvider.Translate()`

`DbLocalizationProvider.ResourceKeyBuilder` lost all static methods.

`DbLocalizationProvider.ExpressionHelper` lost all static methods.

## Data Model

* `LocalizationResource.Translations` from `ICollection<LocalizationResourceTranslation>` to `LocalizationResourceTranslationCollection`
* introduced `IResourceRepository` - for easier storage implementations
* moved `LocalizedResource` & `LocalizedTranslation` to `DbLocalizationProvider.Abstractions` project
* moved `DiscoveredResource` from `DbLocalizationProvider.Sync` to `DbLocalizationProvider.Abstractions`
* removed `GetAllTranslations` query

## Configuration

* Removed

```
ConfigurationContext.Setup()
ConfigurationContext.Current
```

* Converted to method

```
ConfigurationContext.ResourceLookupFilter
```

* Rename

```
ConfigurationContext.FallbackCultures
```

to

```
ConfigurationContext.FallbackLanguages
```

## Sync

* Refactored from static `DiscoveredTranslation.FromSingle` to `DiscoveredTranslationBuilder.FromSingle`
*

## Azure Functions runtime

```
builder.Services.BuildServiceProvider().UseDbLocalizationProvider();
```

# .NET Core Runtime

## Configuration Changes

Removed `UiConfigurationContext.Current`

Removed `UiConfigurationContext.AuthorizedAdminRoles` and `UiConfigurationContext.AuthorizedEditorRoles`

## UI Access Policy

Deprecated:

UiConfigurationContext.AuthorizedAdminRoles
UiConfigurationContext.AuthorizedEditorRoles

Now you can just define access policy:

```csharp
services.AddDbLocalizationProviderAdminUI(_ =>
{
    _.AccessPolicyOptions = builder =>
        builder.AddRequirements(new RolesAuthorizationRequirement(new [] { "test" }));
});
```


text:
---
hrs_structure:
  division: '2'
  volume: '9'
  title: '24'
  chapter: '431'
  section: '431:11-107.5'
type: hrs_section
tags:
  - Business
menu:
  hrs:
    identifier: HRS_0431-0011-0107_0005
    parent: HRS0431
    name: '431:11-107.5 Supervisory colleges'
weight: 14935
title: Supervisory colleges
full_title: '431:11-107.5 Supervisory colleges'
---
**[§431:11-107.5] Supervisory colleges.** (a) With respect to any insurer registered under section 431:11-105, and in accordance with subsection (c), the commissioner may participate in a supervisory college for any domestic insurer that is part of an insurance holding company system with international operations to determine compliance by the insurer with this article. The powers of the commissioner with respect to supervisory colleges shall include but not be limited to:

(1) Initiating the establishment of a supervisory college;

(2) Clarifying the membership and participation of other supervisors in the supervisory college;

(3) Clarifying the functions of the supervisory college and the role of other regulators, including the establishment of a group-wide supervisor;

(4) Coordinating the ongoing activities of the supervisory college, including planning meetings, supervisory activities, and processes for information sharing; and

(5) Establishing a crisis management plan.

(b) Each registered insurer subject to this section shall be liable for and shall pay the reasonable expenses of the commissioner's participation in a supervisory college in accordance with subsection (c), including reasonable travel expenses. For purposes of this section, a supervisory college may be convened as either a temporary or permanent forum for communication and cooperation between the regulators charged with the supervision of the insurer or its affiliates, and the commissioner may establish a regular assessment to the insurer for the payment of these expenses.

(c) To assess the business strategy, financial position, legal and regulatory position, risk exposure, risk management, and governance processes, and as part of the examination of individual insurers in accordance with section 431:11-107, the commissioner may participate in a supervisory college with other regulators charged with supervision of the insurer or its affiliates, including other state, federal, and international regulatory agencies. The commissioner may enter into agreements in accordance with section 431:11-108 providing the basis for cooperation between the commissioner and the other regulatory agencies, and the activities of the supervisory college. Nothing in this section shall delegate to the supervisory college the authority of the commissioner to regulate or supervise the insurer or its affiliates within the commissioner's jurisdiction. [L 2014, c 234, §6]

repository: SamMade/BlueAndKrabby

repo_name: SamMade/BlueAndKrabby


text:
# Coffee Cafeteria

## How to Open

1. Navigate to **cafeteria-backend**.
2. Do Run the following command.
   > `npm run prod-start`
3. Navigate to the following link to open the server.
   [http://localhost:5000](http://localhost:5000)

repository: sidvip/cafeteria-backend

repo_name: sidvip/cafeteria-backend


text:
BomberMan

###### This repository is my advanced programming course project that I had to create a game similar to BomberMan.

## About original game

Bomberman is a strategic, maze-based video game franchise originally developed by Hudson Soft and currently owned by Konami. The first game in the series was released in 1983. Today, Bomberman has featured in over 70 different games on numerous platforms (including all Nintendo platforms).

## How to run the game

First, the one who is specified to be server should set database configurations at **Config/ServerConfig.java**.
After that, he should run **ServerRunner.java** and specify a listening port for the game server.

Then players start **ClientRunner.java** and choose _New Game_, enter their names, server's IP and listening port.

One of the players should choose _Create game_ and others choose _Connect to game_ and choose created game from the list.

## Custom features

We had to develop the game with many custom features that I listed some of them below:

- Singleplayer mode
- Multiplayer mode
- 12 power-up types
- 4 type enemies
- Add new enemies types in running game using compiled class files ( JAVA reflection)
- In game chat
- Modifiable panels and object sizes
- Save and load using database

## Required libraries

- Org.Json
- mysql-connector-java

## License

This game is open-source software licensed under the [MIT license](https://opensource.org/licenses/MIT).

repository: amir-ni/BomberMan

repo_name: amir-ni/BomberMan


text:
`svlogger`
==========

`svlogger` is a generic `svlogd` wrapper for runit services that is meant to be
symlinked to `/.../<service-name>/log/run`.

This script will automatically figure out the service name under which it is
running and write out logs to a file under a directory with that service name
using `svlogd`.

Alternatively, this script can be called with an optional first argument to
specify the service log base directory; the default is `/tmp/sv/log`.

Installation
------------

`svlogger` is a standalone bash script that can be put anywhere on your system.
I personally use this script on Void Linux and put it in `/etc/sv`.  You
can do this with:

    $ sudo make install
    cp svlogger /etc/sv

Usage
-----

To enable logs for a single service:

    # mkdir -p /etc/sv/my-service/log
    # ln -s /etc/sv/svlogger /etc/sv/my-service/log/run

Within 5 seconds `runit` will start the logger service and `svlogd` will write
logs to `/tmp/sv/log/my-service`:

    $ tail /tmp/sv/log/my-service/current
    2018-09-19_21:52:51.30654 starting...
    2018-09-19_21:52:52.30754 tick
    2018-09-19_21:52:53.30926 tick
    2018-09-19_21:52:54.31068 tick

To enable logs for *all* active services that don't currently have a logger:

    cd /var/service
    for d in */; do
        sudo mkdir -p "$d/log"
        [[ -e $d/log/run ]] || sudo ln -s /etc/sv/svlogger "$d/log/run"
    done

You can then view all of the logs generated with:

    # tail -f /tmp/sv/log/*/current
    ...

To log to a directory other than `/tmp/sv`, you can edit the script or pass a
directory name as the first argument.  If you choose to pass a directory name as
an argument you cannot symlink `svlogger` and instead will need to create a
small wrapper script for `svlogger`.  For example:

`/etc/sv/my-service/log/run`

``` sh
#!/bin/sh
exec /etc/sv/svlogger /var/log/sv
```

This will cause `my-service` to output it's logs to the newly created
`/var/log/sv/my-service` directory.

Notes / FAQ
-----------

### Not everything is being logged / I only see `stdout` in my logs

With `runit`, `stdout` will go to the logger program (if it is set) and `stderr`
will show up in the command line of the `runsvdir` program.

To log `stderr`, you need to redirect `stderr` to `stdout` in your service's
`run` script.  You can add an `exec` line like this to the top of your
service's `run` script:

    #!/bin/sh
    exec 2>&1
    ...

Contributing
------------

This project uses:

- Bash Style Guide: https://www.daveeddy.com/bash/
- `shellcheck`: https://github.com/koalaman/shellcheck

Ensure any code contributions pass `make check`:

```
$ make check
awk 'length($0) > 80 { exit(1); }' README.md
awk 'length($0) > 80 { exit(1); }' svlogger
shellcheck svlogger
```

License
-------

MIT License


text:
# ClusterStatfs

## Properties
Name | Type | Description | Notes
------------ | ------------- | ------------- | -------------
**f_bavail** | **int** | The number of free blocks available to non-superuser. |
**f_bfree** | **int** | The number of free blocks in the filesystem. |
**f_blocks** | **int** | The total number of data blocks in the filesystem. |
**f_bsize** | **int** | The filesystem fragment size. |
**f_ffree** | **int** | The number of free nodes available to non-superuser. |
**f_files** | **int** | The total number of file nodes in the filesystem. |
**f_flags** | **int** | A copy of the mount exported flags. |
**f_fstypename** | **str** | The filesystem type name. |
**f_iosize** | **int** | The optimal transfer block size. |
**f_mntfromname** | **str** | The name of the mounted filesystem. |
**f_mntonname** | **str** | The directory that the filesystem is mounted on. |
**f_namemax** | **int** | The maximum length of a file name. |
**f_owner** | **int** | The ID of the user that mounted the filesystem. |
**f_type** | **int** | The type of the filesystem. |
**f_version** | **int** | The structure version number. |

[[Back to Model list]](../README.md#documentation-for-models) [[Back to API list]](../README.md#documentation-for-api-endpoints) [[Back to README]](../README.md)


text:
# readme-gen
project started on 19 aug 2021/
ssh issue, need to recommit once again

# User Story
AS A developer
I WANT a README generator
SO THAT I can quickly create a professional README for a new project

# Acceptance Criteria
GIVEN a command-line application that accepts user input
WHEN I am prompted for information about my application repository
THEN a high-quality, professional README.md is generated with the title of my project and sections entitled Description, Table of Contents, Installation, Usage, License, Contributing, Tests, and Questions
WHEN I enter my project title
THEN this is displayed as the title of the README
WHEN I enter a description, installation instructions, usage information, contribution guidelines, and test instructions
THEN this information is added to the sections of the README entitled Description, Installation, Usage, Contributing, and Tests
WHEN I choose a license for my application from a list of options
THEN a badge for that license is added near the top of the README and a notice is added to the section of the README entitled License that explains which license the application is covered under
WHEN I enter my GitHub username
THEN this is added to the section of the README entitled Questions, with a link to my GitHub profile
WHEN I enter my email address
THEN this is added to the section of the README entitled Questions, with instructions on how to reach me with additional questions
WHEN I click on the links in the Table of Contents
THEN I am taken to the corresponding section of the README

# Getting Started
Here are some guidelines to help you get started:

Create a .gitignore file and include node_modules/ and .DS_Store/ so that your node_modules directory isn't tracked or uploaded to GitHub. Be sure to create your .gitignore file before installing any npm dependencies.

Make sure that your repo includes a package.json with the required dependencies. You can create one by running npm init when you first set up the project, before installing any dependencies.

 This includes views of the prompts and the responses after their selection.

Include any other screenshots you deem necessary to help someone who has never been introduced to your application understand the purpose and function of it. This is how you will communicate to potential employers or other developers in the future what you built and why, and to show how it works.


text:
# Changelog

## 0.4.15

- Move outgoing skip and start messages to debug

## 0.4.14

- [hotfix] rename filter settings

## 0.4.13

- upgrade hull-node

## 0.4.12

- [hotfix] specify explicitely API version for Prospector to prevent breaking changes

## 0.4.11
- upgrade nodejs to v8.10.0

## 0.4.10
- adds dashboard tab
- changes ident building when saving users
- write email, first and last name to clearbit traits group, add setIfNull for `first_name` and `last_name`

## 0.4.9
- Fix Prospector UI not having a Source user to assign track & traits

## 0.4.8
- add pm2 max memory limit

## 0.4.7
- introduce separate babelJS configuration for server side code

## 0.4.6
- optimize node for memory usage and add flow control env vars

## 0.4.5
- fix batch endpoint by correcting Bottleneck signature

## 0.4.4
- make pm2 output raw logs without prefix

## 0.4.3
- adjust pm2 startup script

## 0.4.2
- upgrade Node to v8 and install pm2

## 0.4.1
- downgrade Node to v6

## 0.3.3
- improve test coverage and integration tests
- Fix prospector minimum anonymous user condition
- Even better metrics.
- Update dependencies
- use `/test/mocha.opts` to centralize mocha config, now atom's `mocha-test-runner plugin can be used` - no need to open a terminal, open the test file and run `ctrl-alt-m`

## 0.3.2
- Add Status Endpoint
- Improve Logging
- Improve Settings UI

## 0.3.1
- Use hull-node's metrics tooling

## 0.3.0
- update dependencies
- metrics calls
- upgrade hull to 0.13.9
- add support for smart-notifier

## 0.2.8
- Stores `prospected_at` in account domain
- Looks in Accounts for domain attributes
- Has fallback strategy for domain looking into Account data
- factors tests

## 0.2.7

- Stores a `Clearbit Prospector Triggered` event on the user that triggers prospection, storing the following values:
  + query content
  + number of results found
  + list of prospected emails found
- Adds a `clearbit/prospected_from` field on the prospected users with the identity of the User that triggered the prospection

## 0.2.6

- changes default behaviour of Reveal to only send users in a set of segments. Transition phase: Empty reveal_segments sends everyone.
- Deprecated: "reveal enabled" checkbox - empty revealed segment will achieve the same thing (in future version)
- Refactors reveal and enrich code to define responsibilities
- Refactors tests to abstract console parsing logic

## 0.2.5

- assign anonymousId for Prospected users to `clearbit-prospect:${prospect.id}`

## 0.2.4

- fix issues with non-human readable error messages in prospector UI
- filter error messages for 'unknown_ip' to classify errors properly

## 0.2.3

- fix issues with prospector UI

## 0.2.2

- handle errors on prospection and discovery API

## 0.2.1

- upgrade<EMAIL_ADDRESS>
## 0.2.0

- prospector UI allows to define multiple roles, seniority levels and titles now
- prospector fetch strategy was changed - now we iterate over titles and fetch prospects for each title until we hit the fetch limit, without title
- `prospect_filter_role` and `prospect_filter_seniority` changed from string to an array

## 0.1.6

- set default cache ttl

## 0.1.5

- don't skip enrich if already revealed
- add better logging for reveal

## 0.1.4

- handle Clearbit API errors on the enrich method
- restructurized tests

## 0.1.3

- upgrade hull-node to 0.11.11

## 0.1.2

- upgrade hull-node to 0.11.9 to avoid logging the whole user object in the context of the logs
- require newrelic at the script start

## 0.1.1

- change the webhook endpoint for enrich to distinguish it from old webhook url
- log query and body for old webhook url
- fix old `.as` calls

## 0.1.0

- [feature] account support
- [feature] exclude invalid IPs and domains

repository: hull-ships/hull-clearbit

branch_name: refs/heads/develop

gha_language: JavaScript

repo_name: hull-ships/hull-clearbit