text:
# Query Casting

The first parameter to [`Model.find()`](../api/model.html#model_Model-find), [`Query#find()`](../api/query.html#query_Query-find), [`Model.findOne()`](../api/model.html#model_Model-findOne), etc. is called `filter`.
In older content this parameter is sometimes called `query` or `conditions`. For example:

```acquit
[require:Cast Tutorial.*get and set]
```

When you execute the query using [`Query#exec()`](../api/query.html#query_Query-exec) or [`Query#then()`](../api/query.html#query_Query-then), Mongoose *casts* the filter to match your schema.

```acquit
[require:Cast Tutorial.*cast values]
```

If Mongoose fails to cast the filter to your schema, your query will throw a `CastError`.

```acquit
[require:Cast Tutorial.*cast error]
```

## The `strictQuery` Option

By default, Mongoose does **not** cast filter properties that aren't in your schema.

```acquit
[require:Cast Tutorial.*not in schema]
```

You can configure this behavior using the [`strictQuery` option for schemas](../guide.html#strictQuery). This option is analogous to the [`strict` option](../guide.html#strict). Setting `strictQuery` to `true` removes non-schema properties from the filter:

```acquit
[require:Cast Tutorial.*strictQuery true]
```

To make Mongoose throw an error if your `filter` has a property that isn't in the schema, set `strictQuery` to `'throw'`:

```acquit
[require:Cast Tutorial.*strictQuery throw]
```

## Implicit `$in`

Because of schemas, Mongoose knows what types fields should be, so it can provide some neat syntactic sugar. For example, if you forget to put [`$in`](https://www.mongodb.com/docs/manual/reference/operator/query/in/) on a non-array field, Mongoose will add `$in` for you.

```acquit
[require:Cast Tutorial.*implicit in]
```

repository: Automattic/mongoose

repo_name: Automattic/mongoose


text:
# DeepFake Detection

Codes for my homework project *DeepFake Detection*.

- Folder ```CelebA``` includes our source code and data for experiment on the CelebA dataset. Contents for each file are as follows:

  - ```celeba_low_1000.pkl``` are the power spectrum data for images in the dataset. You can also compute these data on your own by uncommenting corresponding codes in ```DeepFake Detection CelebA.py``` and change the paths into your local paths.
  - ```DeepFake Detection CelebA.py``` are codes for training and testing the classifier.
  - ```radialProfile.py``` is an auxiliary file.

  If you wish to compute the power spectrum on your own, download datasets at [DeepFakeDetection/dataset_celebA.7z](https://github.com/cc-hpc-itwm/DeepFakeDetection/blob/master/Experiments_CelebA/dataset_celebA.7z) and [Img - Google Drive](https://drive.google.com/drive/folders/0B7EVK8r0v71pTUZsaXdaSnZBZzg?resourcekey=0-rJlzl934LzC-Xp28GeIBzQ) (download only ```img_align_celeba.zip``` in the second link) and change the paths into your local paths before running the codes. Otherwise, run the codes directly.

- Folder ```FaceForensics``` includes our source code and data for experiment on the FaceForensics dataset. Contents for each file are as follows:

  - ```DeepFake Detection FaceForensics.py``` are codes for training and testing the classifier.
  - ```radialProfile.py``` is an auxiliary file.
  - ```test_1000.pkl``` are the power spectrum data for images in the training set. You can also compute these data on your own by uncommenting corresponding codes in ```DeepFake Detection FaceForensics.py``` and change the paths into your local paths.
  - ```train_3200.pkl``` are the power spectrum data for images in the testing set. You can also compute these data on your own by uncommenting corresponding codes in ```DeepFake Detection FaceForensics.py``` and change the paths into your local paths.

  If you wish to compute the power spectrum on your own, download datasets at [prepro_deepFake.7z - Google Drive](https://drive.google.com/file/d/1rokPjCHe30mZBnk7J5j0MiIuUAuOqHoQ/view) and change the paths into your local paths before running the codes. Otherwise, run the codes directly.

- Folder ```Faces-HQ``` includes our source code and data for experiment on the Faces-HQ dataset. Contents for each file are as follows:

  - ```dataset_freq_1000.pkl``` are the power spectrum data for images in the dataset. You can also compute these data on your own by uncommenting corresponding codes in ```DeepFake Detection Faces-HQ.py``` and change the paths into your local paths.
  - ```DeepFake Detection Faces-HQ.py``` are codes for training and testing the classifier.
  - ```radialProfile.py``` is an auxiliary file.

  If you wish to compute the power spectrum on your own, download datasets at [faces.tar.gz - Google Drive](https://drive.google.com/file/d/1AqbGw82ueBP3fNNVCbXZgOPPFsh2uNXm/view) and change the paths into your local paths before running the codes. Otherwise, run the codes directly.

- ```Experiment Report.pdf``` is the experiment report of my homework.

- ```Poster.pdf``` is a poster for my project.

The principle of my method is described in these two papers:

- Durall, R., Keuper, M., & Keuper, J. (2020). Watch your up-convolution: CNN based generative deep neural networks are failing to reproduce spectral distributions. In *Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition* (pp. 7890-7899).
- Durall, R., Keuper, M., Pfreundt, F. J., & Keuper, J. (2019). Unmasking DeepFakes with simple features. *arXiv preprint arXiv:1911.00686*.

license: MIT

repository: GeorgeMLP/deepfake-detection

branch_name: refs/heads/master

extension: md

license_type: permissive

repo_name: GeorgeMLP/deepfake-detection


text:
# ansible-examples

[![Build Status](https://dev.azure.com/IBM-Blockchain/ansible-examples/_apis/build/status/IBM-Blockchain.ansible-examples?branchName=master)](https://dev.azure.com/IBM-Blockchain/ansible-examples/_build/latest?definitionId=2&branchName=master)

This repository contains a set of example Ansible playbooks for building Hyperledger Fabric networks using the IBM Blockchain Platform. All of the example Ansible playbooks make use of the Ansible role `ibm.blockchain_platform_manager`, available from [Ansible Galaxy](https://galaxy.ansible.com/ibm/blockchain_platform_manager).

one-org-network
-------

The [one-org-network](one-org-network/README.md) directory contains an Ansible playbook for building a Hyperledger Fabric network with one organization, `Org1`. The organization has two peers. The two peers are configured with a single channel, `channel1`. The FabCar sample contract is instantiated on this channel.

two-org-network
-------

The [two-org-network](two-org-network/README.md) directory contains an Ansible playbook for building a Hyperledger Fabric network with two organizations, `Org1` and `Org2`. Each organization has two peers. The two peers are configured with a single channel, `channel1`. The FabCar sample contract is instantiated on this channel, with an endorsement policy stating that both organizations must endorse any transactions.

License
-------

Apache-2.0


text:
---
layout: post_body
date: 2019-08-29
title: TensorFlow.js Pretrained model
tags: [Artificial Intelligence, Machine Learning]
featured-img: tfjs
img-type: jpg
permalink: Projects/tensorflow.js/pretrained.html
github: https://github.com/pierpaolo28/Artificial-Intelligence-Projects/tree/master/Google%20AI%20tools/tensorflow.js
---

<script src="script3.js"></script>
<script src="https://cdn.jsdelivr.net/npm/@tensorflow/tfjs"> </script>
<script src="https://cdn.jsdelivr.net/npm/@tensorflow/tfjs-vis"></script>

The dataset used for this example is the "Pima Indians Diabetes Database" dataset.

The features contained in this dataset are:
1. Pregnancies: Number of times pregnant
2. GlucosePlasma: glucose concentration a 2 hours in an oral glucose
tolerance test
3. BloodPressure: blood pressure (mm Hg)
4. SkinThickness: skin fold thickness (mm)
5. Insulin2-Hour: serum insulin (mu U/ml)
6. BMIBody: mass index (weight in kg/(height in m)^2)
7. DiabetesPedigreeFunction: pedigree function
8. Age: Age in years

And the label column (called Outcome) identifies if someone suffers or
not of Diabetes (268 of 768 cases are 1, the others are 0). This dataset
is available to download [here.](https://www.kaggle.com/uciml/pima-indians-diabetes-database)

For this example, I first trained a model using Tensorflow Eager
Execution (executes operations immediately, without building graphs:
operations return concrete values instead of constructing a
computational graph to run later) to create a Multi Layer Perceptron in
Python. Finally, I saved this trained model and deploy it online at this
page ready to make predictions. The Python script I used to create this
model is available [here.](https://github.com/pierpaolo28/Artificial-Intelligence-Projects/blob/master/Google%20AI%20tools/tensorflow.js/PreTrainedModel.ipynb)

You can use the buttons below to open or close the online Machine
Learning model window as you wish.

<button class="btn" id="show-visor">
  Display Visor
</button>

<button class="btn" id="hide-visor">
  Hide Visor
</button>

<button
  onclick="location.href='/Projects/tensorflow.js/tensorjs.html'"
  class="btn">
Previous Page
</button>

gha_language: HTML


text:
# Conway's Game of Life
Conway's Game of Life created using P5.js.

- Works on both PC and mobile.
- Supports saving & loading of grid systems
- Infinite grid system

**Try it here:** https://games.mauritzonline.com/game/conways_game_of_life/

repository: mauritzn/Conways-Game-of-Life

repo_name: mauritzn/Conways-Game-of-Life


text:
---
layout: engineering-education
status: publish
published: true
url: /ci-cd-setup-vue/
title: How to Set Up CI/CD in a Vue Project with Firebase Hosting and Github Actions
description: In this tutorial, we will go over how to set up CI/CD in a Vue Project with Firebase Hosting and Github Actions. The main objective is to automatically build and deploy the updates to the main server after each pull request or change has been merged to the master branch of our GitHub repository.
author: worawat-kaewsanmaung
date: 2021-02-15T00:00:00-10:00
topics: []
excerpt_separator: <!--more-->
images:

  - url: /engineering-education/ci-cd-setup-vue/hero.png
    alt: CI/CD in a Vue Project with Firebase
---
Most of the software development workflow includes running, testing, building, and deploying the project manually. Each time we have any changes or updates we push the code to our version control system and deploy it manually. In any development phase, it can be highly inefficient to fix bugs and update new features manually as it consumes a lot of time and effort.
<!--more-->
The solution to this is to automate the entire deployment process. This can be done by applying CI/CD to a project. Here, we are going to do that using Vue, Firebase Hosting, and GitHub workflows.

The overall process automates the software development and management process and makes it easy to test and deploy the final results. The main objective is to automatically build and deploy the updates to the main server after each pull request or change has been merged to the master branch of our GitHub repository.

The overall process involves:
- Setting up the Vue project.
- Pushing the Vue project to the GitHub repository.
- Setting up the Firebase project.
- Setting up Firebase hosting in Vue project using latest firebase-tools.
- Configuring the connection between Firebase Hosting and GitHub by applying GitHub workflows.

What will happen as a result:
- We will push the code to the master branch or create a pull request to merge the branch.
- Triggers the GitHub actions workflow scripts.
- After the successful merge action, the changes will be automatically deployed to the live website without having to do any manual configurations.
- We can also include the testing scripts in the workflow scripts to automate testing before merging.

### Pre-requisites
- [Git Version Control](https://github.com/git-for-windows/git/releases/download/v2.29.1.windows.1/Git-2.29.1-64-bit.exe)
- [GitHub Account](http://github.com/)
- [Firebase Account](https://firebase.google.com/)
- [Vue CLI](https://cli.vuejs.org/)
- Knowledge of [Vue JavaScript framework](https://vuejs.org/).

### Step 1: Vue Boilerplate
The first step is to get our Vue project ready. For the Vue boilerplate project, we are going to make use of Vue CLI. First, we need to install the latest version of Vue CLI globally in our system.

It allows us to download the starter Vue template based on various configurations. The required packages are pre-installed. It also enables us to manage the Vue project.

To install it, we need to run the following command in our system terminal:
```bash
npm install @vue/cli -g
```

After Vue CLI has been installed, we can now start a new Vue Project. For that, we need to run the following command in the directory where we want to download the project:

```bash
vue create vue_cicd
```

After running the command instead of executing the automatic setup of features, we need to select manual configuration. In the manual configuration option, we will need to specify which Vue features to include.

The required features are marked as shown in the screenshot below:

![create new vue project with cli](/engineering-education/ci-cd-setup-vue/1-create-new-vue-project-with-cli.png)

All of the features are unnecessary for this tutorial but for an actual Vue project, the selected features may be a prerequisite. We have also selected the Unit testing and E2E testing which can be also automated using the GitHub workflow actions.

After the selection is done, we can hit 'Enter' to go on to the next process which is shown in the screenshot below:

![set up new vue project with cli](/engineering-education/ci-cd-setup-vue/2-set-up-new-vue-project-with-cli.png)

Here, we have selected the other additional requirements such as Vue version 3, enable history mode for the router, Prettier as code formatting, Jest for unit testing, and Cypress for E2E testing, etc. All the configurations will be saved to their default config files.

After the successful installation of the project, we need to go to the project directory using the following command:

```bash
cd vue_cicd
```

Next, we need to execute the following command to run the project in the localhost:

```bash
npm run serve
```

We will get the following result in the browser:

![first vue hello world app](/engineering-education/ci-cd-setup-vue/3-first-vue-hello-world-app.png)

### Step 2: Push project to GitHub
Now, we are going to upload our code to GitHub using Git. GitHub is an online cloud platform that stores the accurate versions of our coding project after each upload. It is a project management system designed to facilitate version control for Git.

Git is a version control tool used to provide a proper version to our coding project after each push or upload. Another major feature it provides is GitHub actions that will be used to automate the workflow. It helps ease up the build and deployment process.

Next, we need to login into a GitHub account and create a repository as directed in the screenshot below:

![create new github repo](/engineering-education/ci-cd-setup-vue/4-create-new-github-repo.png)

After mentioning the repository name, we can simply hit the 'Create repository' to create a repo. Now, this repository is where we can push our Vue project.

Here, we are going to make use of Git commands to push the project files. In the root project folder, we need to open the terminal or Git Bash and execute the following commands given order:

```bash
git init
git add .
git commit -m "<your comment or message>"
git remote add origin <git repo origin link>
git push -u origin master
```

This will push our project to the master branch of our GitHub repository 'vue_cicd_example'.

*After the successful update, you can check your GitHub repo where you will find the project files just as in your vue project folder*

This completes our setup of the GitHub repo and pushing of our project to the GitHub repo.

### Step 3: Integrating Firebase hosting along with GitHub workflow
This step is a major one for this tutorial where we are going to link the Firebase hosting with GitHub workflow actions. The process is to connect Firebase hosting with GitHub actions so as to automate the process of deployment after each push and merge.

But first, we need to create a Firebase project in order to link firebase to our Vue project.

### Step 3.1: Creating a Firebase project
To create a Firebase project, we need to log in to the [Firebase](https://firebase.google.com/) and navigate to the firebase console. There we can simply click on 'Add a project' to get our project started.

At first, a window will appear asking to input the project name. Here, we will keep the project name as **`vue-cicd`** as shown in the screenshot below:

![create new firebase app](/engineering-education/ci-cd-setup-vue/5-create-new-firebase-app.jpg)

We can continue to the next step, when the project has been created. After the project has been set up, we will get a project console as demonstrated in the screenshot below:

![firebase dashboard](/engineering-education/ci-cd-setup-vue/6-firebase-dashboard.jpg)

Now our Firebase project setup is complete. We can now configure the Firebase hosting in our Vue project.

### Step 3.2: Configure Firebase hosting
Now that we have our repo in GitHub and the Firebase project, let’s initialize Firebase hosting for the project.

For this, we need to have Firebase CLI installed on our local machine. We need to globally install the firebase-tools package by executing the following command in our terminal:

```bash
npm install -g firebase-tools
```

>*Note that: We need to install the **latest version of firebase-tools** to get the configurations to connect with the GitHub project repo automatically through the firebase commands.*

Now, we need to make sure that we are in the root project folder, and then execute the following command:

```bash
firebase init
```

This command will provide us the configurations to initialize the Firebase project in our Vue project directory:

First, it will ask us for the Firebase CLI feature that we want to set up in our project folder as shown in the screenshot below:

![create new firebase cli app](/engineering-education/ci-cd-setup-vue/7-create-new-firebase-cli-app.jpg)

Since we are going to link the Firebase hosting, we at least need to select the hosting feature.

After that, we will be asked to select the Firebase Project. For this, we need to select the Firebase project from the existing list of projects in our Firebase console.

Since we already have a Firebase project **`vue-cicd`** created in the earlier steps, we need select that one.

After the Firebase project has been selected, we will be asked to configure the hosting setups. The configurations that we need to apply is demonstrated in the screenshot below:

![setup new firebase cli app](/engineering-education/ci-cd-setup-vue/8-setup-new-firebase-cli-app.jpg)

Here, we have selected our public directory as **'dist'**, which will contain the Hosting assets to be uploaded during firebase deployment.

Then, we are going to configure our project as a **single-page app** that will link all our coding files to **index.html**.

Here, the last configuration question asking us to **'Set up automatic builds and deploys with GitHub?'** is the most important one. We need to make sure to give 'Yes' as an answer for this. This will connect our Firebase Hosting setup to GitHub and automate the builds and deployments.

At this stage, it will connect to our GitHub to get the repository information after a **simple authorization process** that will open up in the browser.

### Step 3.3: Integrating GitHub workflow actions to hosting
After the successful authorization, we will be linked with our GitHub account so we can connect our repositories to our Firebase hosting.

Then, we will select the existing repositories in our GitHub account so that we can set up the GitHub workflow as shown in the screenshot below:

![setup ci cd in firebase cli](/engineering-education/ci-cd-setup-vue/9-setup-ci-cd-in-firebase-cli.jpg)

Here, we need to enter our [**GitHub username/GitHub project repository name** (created earlier)].

Then, we will be asked if we would like to run the build script before every deploy to which we need to put 'Yes' as an answer.

The script to run and commands are automatically given for the next configuration, so we simply need to press the 'Enter' button. The configuration screenshot is provided below:

![setup ci cd in firebase cli](/engineering-education/ci-cd-setup-vue/9-setup-ci-cd-in-firebase-cli-2.jpg)

This will create a workflow file called **firebase-hosting-pull-request.yml** in our project directory inside the **.github/workflows** folder.

Then, the additional configuration steps to automate the deployment to our site and which GitHub branch to deploy is shown in the screenshot below:

![setup ci cd in firebase cli](/engineering-education/ci-cd-setup-vue/9-setup-ci-cd-in-firebase-cli-3.jpg)

Here, we will choose to automate the deployment to our site in real-time when each pull-request to the master branch in our GitHub repo is merged.

This will create a workflow file called **firebase-hosting-merge.yml** in our project directory inside the **.github/workflows** folder.

After these successful configurations, the Firebase project with hosting enabled will be created which will then connect the Firebase project to the repository in Github.

As a result, the workflow folder and files will be created as shown in the screenshot below:

![github actions workflow files](/engineering-education/ci-cd-setup-vue/10-github-actions-workflow-files.jpg)

The major objective of these two workflows was to build the application and deploy it to Firebase Hosting automatically.

The first workflow file **firebase-hosting-merge.yml** will execute in every merge to the master branch. It will deploy the merge to our production or live website environment.

The second workflow file **firebase-hosting-pull-request.yml** will only execute when a pull-request is created from any arbitrary branch to the master branch. It will deploy the push to a separate URL which will enable us to test out the result before executing the merge to the pull request.

Now, with these two workflow scripts running, we won't have to deal with deployment every time we make changes to the code and push to the GitHub repo.

We only need to push and merge the changes to the master branch. The rest of the build and deployment process will be automatically taken care of by Firebase and GitHub will automatically execute the deployment.

### Step 4: Testing to see if GitHub actions works
Now that we have everything set up, let's test it out. Since we have two workflow files already in our Vue project directory, we already have some changes to push.

Now, we need to create a new **Git branch** in the root project and push the branch to the GitHub repo.

Now from the GitHub console, we can navigate to that branch and create a **pull request** in GitHub from the created branch to the master branch, that will automatically trigger the workflow with Github actions as shown in the screenshots below:

![testing deployment result](/engineering-education/ci-cd-setup-vue/11-testing-deployment-result-1.png)

This proves that our configuration is working properly. Now after accepting the pull-request and merging the branch, the master branch will automatically trigger deployment as well.

We can check the successful deployment action from the [GitHub repo actions](https://github.com/Worawat101/vue_cicd_example/runs/1760954615?check_suite_focus=true).

The changes will be deployed live in the hosted website [demo here](https://vue-cicd-b28ff.web.app/).

### Recap
The overall objective of the article was to help us get familiar with CI/CD with Vue.js project, Firebase, and GitHub actions workflows. This tutorial article delivered the detailed (step-by-step) concepts of how to configure the CI/CD process. The major step revolved around the configuration of Firebase Hosting with GitHub workflows.

The steps are simple and easy to understand and apply. All the manual work for iteratively building and deploying to the live server is simplified by this process.

The only work we have to do is to push our changes and merge the changes to the master branch. The rest of the operation is automatically handled by Firebase and GitHub action scripts.

There is so much more to GitHub actions workflows that we can explore. Remember that we also included the testing configurations in our setup of the Vue project at the beginning.

We can also trigger the automatic Unit and E2E testing using the workflow scripts while merging before the deployment. This will easily identify any errors or bugs in the changes automatically without having to do manual testing.

Hence, this is highly advantageous in the case of an overall software development cycle.

Happy coding!

---
Peer Review Contributions by: [Daniel Katungi](/engineering-education/authors/daniel-katungi/)

repository: mbuguac/engineering-education

gha_language: SCSS

repo_name: mbuguac/engineering-education


text:
# prime-fun

Lightwieght package with all the prime-finding tools that you'll ever need. This module can check for primality, find all primes below an upper bound, find twin primes, and find prime k-tuples for 3 ≤ k ≤ 13. Primes are found using the Sieve of Eratosthenes algorithm, which produces quick results.

# Installation
In your project's directory, type:

```
npm install prime-fun
```

# Usage

## Load package

At the top of your file:

```javascript
import primes from 'prime-fun';
```

## Methods

There are four methods:  isPrime(n), sieve(n), twinPrimes(n), and tupleTemplate(n, k).

### `isPrime(number)`
This will check the primality of a `number`, returning true if it is prime, and false otherwise.

```javascript
console.log(primes.isPrime(53));
// => true

console.log(primes.isPrime(774637));
// => false

console.log(1444441);
// => true
```

### `sieve(upper_bound)`
This runs the Sieve of Eratosthenes algorithm to return an array of all the prime numbers from 2 to the `upper_bound` number passed into the method.

```javascript
console.log(primes.sieve(100));
// => [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97]
```

### `twinPrimes(upper_bound)`
This will return an array of arrays containing all the twin prime pairs up to the `upper_bound` number that is passed into the method.

```javascript
console.log(primes.twinPrimes(100));
// => [[3, 5], [5, 7], [11, 13], [17, 19], [29, 31], [41, 43], [59, 61], [71, 73]]
```

### `tupleTemplate(upper_bound, tuple)`
This method returns an array of arrays containing prime k-tuples, where k ≥ 3, up to the `upper_bound` passed into the function.
Acceptable integer values for `tuple` are: `3, 4, 5, 6, 7, 8, 9, 10, 11, 12` or `13`

```javascript
// All prime triplets up to 30
console.log(primes.tupleTemplate(30, 3));
// => [[5, 7, 11], [7, 11, 13], [11, 13, 17], [13, 17, 19], [17, 19, 23]]
```
```javascript
// All prime septuplets up to 10,000
console.log(primes.tupleTemplate(10000, 7));
// => [[11, 13, 17, 19, 23, 29, 31], [5639, 5641, 5647, 5651, 5653, 5657, 5659]]
```

There are two string arguments that can be passed in the `tuple` parameter, which are `"cousin"` and `"sexy"`. Cousin primes are a pair of primes who are 4 apart, and Sexy primes are 6 apart.

```javascript
console.log(prime.tupleTemplate(50, "cousin"));
// => [[3, 7], [7, 11], [13, 17], [19, 23], [37, 41], [43, 47]]

console.log(prime.tupleTemplate(50, "sexy"));
// => [[5, 11], [7, 13], [11, 17], [13, 19], [17, 23], [23, 29], [31, 37], [37, 43], [41, 47]]
```

# Testing
To run the included test suite, first ensure `mocha` is installed by navigating to the root directory of this package and running
```
npm install
```
Then
```
npm test
```

# References
[Wikipedia Prime k-tuple](https://en.wikipedia.org/wiki/Prime_k-tuple)

[Online Encyclopedia of Integer Sequences](https://oeis.org/A257129)

# License
(The ISC License)

Copyright 2021 Kyle W. Smith<EMAIL_ADDRESS>
Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.

 IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.

license: ISC

repository: smittythehippy/prime-fun

branch_name: refs/heads/main

repo_name: smittythehippy/prime-fun


text:
# Change Log

All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.

## 1.0.0 (2019-03-16)

**Note:** Version bump only for package @vue-foldable/weibo

## 0.5.0 (2018-07-30)

**Note:** Version bump only for package @vue-foldable/weibo

## 0.4.2 (2018-07-24)

* fix: unepxected npm excluded dist dir. ([b11bb0d](https://github.com/ulivz/vue-foldable/commit/b11bb0d))

repository: zhikangfan-jyd/vue-foldable

repo_name: zhikangfan-jyd/vue-foldable


text:
# OOP_final
Functions on openCV are in `OOP_final/BeautyWho/BeautyWho/Backend`,which contains `imageProcess.h`  `image_test.cpp` and a folder named `test_image`.

`OOP_final/BeautyWho/BeautyWho.sln` can be directly opened by `VS 2017`.

In the folder `OOP_final/BeautyWho/BeautyWho/` , `main.cpp`、`BeautyWho.cpp`、`BeautyWho.h` are the most important files. `BeautyWho.ui` is the ui file which be opened by `Qt Designer`.

If you want to connect functions from backend, remember to call it in `BeautyWho.cpp`. Notice the function should be connected in the ui file.


text:
# ngeo

ngeo is a JS library that aims to ease the development of applications based on
[AngularJS](https://angularjs.org/) and [OpenLayers](http://openlayers.org).

More specifically, ngeo is a collection of AngularJS Directives and Services
useful for developing applications combining AngularJS and OpenLayers.

Through the Directives, Services and examples it provides, ngeo defines
a specific way to combine Angular and OpenLayers in an application.

If you use ngeo we recommend that you also use Closure, because this is the way
we design and use ngeo at Camptocamp. But using Closure is not mandatory:
standalone builds of ngeo can be created.

[Examples](../examples)

gha_language: JavaScript

gha_license_id: MIT


text:
# Shape scheme

The Material Design shape system can be used to create a shape theme that reflects your brand or
style.

## Related Documentation

Theming

## Table of contents

- [Overview](#overview)
  - [Shape Values](#shape-values)
  - [Shape to Component Mapping](#shape-to-component-mapping)
- [Installation](#installation)
  - [Installation with CocoaPods](#installation-with-cocoapods)
  - [Importing](#importing)
- [Usage](#usage)
  - [Typical use: customizing a shape scheme](#typical-use-customizing-a-shape-scheme)
- [Component content awareness when using custom shapes](#component-content-awareness-when-using-custom-shapes)

- - -

## Overview

An implementation of the Material Design shape scheme is provided in the `MDCShapeScheme`
class. By default, an instance of this class is configured with the Material defaults.
The following image shows an MDCButton themed with the default
shape scheme values (bottom) and an MDCButton themed with custom shape scheme values (top).

Currently, 5 components support being themed with a shape scheme using a `shape themer` extension, namely Cards, Buttons, FABs, Chips,
and Bottom Sheet. You can learn more about which extensions are available for a given component by reading the
[component documentation](../../).

### Shape Values

A shape scheme consists of the following shape values:

| Shape Category         | Use        |
|:---------------------  |:---------- |
| `smallComponentShape`  | The shape defining small sized components.  |
| `mediumComponentShape` | The shape defining medium sized components. |
| `largeComponentShape`  | The shape defining large sized components.  |

Each of the shape categories are of the class `MDCShapeCategory`.

An `MDCShapeCategory` holds properties that define a shape value. It consists of 4 corners of type `MDCCornerTreatment` that represent each corner of the shape. It also has a convenience initializer to set all the 4 corners at once to the same value, creating a symmetrical shape.

Lastly, an `MDCCornerTreatment` can be set by using any of the convenience initializers in [MDCCornerTreatment+CornerTypeInitializer.h](https://github.com/material-components/material-components-ios/blob/develop/components/private/ShapeLibrary/src/MDCCornerTreatment%2BCornerTypeInitalizer.h).

### Shape to Component Mapping

Below is a table showing how our shape categories are mapped to each component.

| Small Components | Medium Components | Large Components           |
|------------------|-------------------|----------------------------|
| Button           | Card              | Bottom Sheet (modal)       |
| Chip             | Dialog            | Navigation Drawer (bottom) |
| Extended FAB     |                   |                            |
| FAB              |                   |                            |
| Snackbar         |                   |                            |
| Textfield        |                   |                            |

## Installation

### Installation with CocoaPods

Add the following to your `Podfile`:

```bash
pod 'MaterialComponents/schemes/Shape'
```

Then, run the following command:

```bash
pod install
```

### Importing

To import the component:

#### Swift
```swift
import MaterialComponents.MaterialShapeScheme
```

#### Objective-C

```objc
#import "MaterialShapeScheme.h"
```

## Usage

### Typical use: customizing a shape scheme

You'll typically want to create one default `MDCShapeScheme` instance for your app where all
of the shape properties are set to your desired brand or style.

#### Swift
```swift
let shapeScheme = MDCShapeScheme()
// Small Component Shape
shapeScheme.smallComponentShape = MDCShapeCategory(cornersWith: .cut, andSize: 4)

// Medium Component Shape
shapeScheme.mediumComponentShape = MDCShapeCategory(cornersWith: .rounded, andSize: 10)

// Large Component Shape
let largeShapeCategory = MDCShapeCategory()
let rounded50PercentCorner = MDCCornerTreatment.corner(withRadius: 0.5,
                                                       valueType: .percentage)
let cut8PointsCorner = MDCCornerTreatment.corner(withCut: 8)
largeShapeCategory?.topLeftCorner = rounded50PercentCorner
largeShapeCategory?.topRightCorner = rounded50PercentCorner
largeShapeCategory?.bottomLeftCorner = cut8PointsCorner
largeShapeCategory?.bottomRightCorner = cut8PointsCorner
shapeScheme.largeComponentShape = largeShapeCategory
```

#### Objective-C

```objc
MDCShapeScheme *shapeScheme = [[MDCShapeScheme alloc] init];
// Small Component Shape
shapeScheme.smallComponentShape =
    [[MDCShapeCategory alloc] initCornersWithFamily:MDCShapeCornerFamilyCut
                                            andSize:4];

// Medium Component Shape
shapeScheme.mediumComponentShape =
    [[MDCShapeCategory alloc] initCornersWithFamily:MDCShapeCornerFamilyRounded
                                            andSize:10];

// Large Component Shape
MDCShapeCategory *largeShapeCategory = [[MDCShapeCategory alloc] init];
MDCCornerTreatment *rounded50PercentCorner =
    [MDCCornerTreatment cornerWithRadius:(CGFloat)0.5 valueType:MDCCornerTreatmentValueTypePercentage];
MDCCornerTreatment *cut8PointsCorner = [MDCCornerTreatment cornerWithCut:8];
largeShapeCategory.topLeftCorner = rounded50PercentCorner;
largeShapeCategory.topRightCorner = rounded50PercentCorner;
largeShapeCategory.bottomLeftCorner = cut8PointsCorner;
largeShapeCategory.bottomRightCorner = cut8PointsCorner;
shapeScheme.largeComponentShape = largeShapeCategory;
```

## Component content awareness when using custom shapes

Choosing a shape value for your shape scheme or component has an effect on the component's content.

As an example, we may choose the `smallComponentShape` category to have a cut corner treatment at a 50% value of its height.
That will create a diamond-like shape, which in certain cases is likely to clip content.
In other cases, such as with dynamic type, or a typography scheme with large fonts, even a less intrusive shape could potentially cut out content.

Therefore, it is recommended to be mindful of how a custom shape manipulates the component and if that shape makes sense for your specific case.
One recommendation is to use the built-in UIView’s `layoutMargins`. By setting it to a custom `UIEdgeInset` you can get the desired outcome for your content when using a custom shape.

branch_name: refs/heads/develop

gha_language: Objective-C


text:
# Description
Please include a summary of the change or which issue is fixed.

# Definition of Done completed?
Consider below checklist before you create the Pull Request. Mark the checklist items you have considered in your change
with ([x]). If something is not applicable mark them as [N/A] and enter a valid why it's not applicable. If you would like to
change our "Definition of Done" create a Pull Request on how it should be changed and start a conversation in the project
"Team" channel.

- [] Code compiles without errors or actionable warnings
- [] Feature validated against the acceptance criteria
- [] Change developed as per guidelines in the README.md
- [] Written unit-tests to validate expected behaviour, if adds value
- [] Written integration tests to validate end-to-end functionality, if adds value
- [] Add unit tests for JavaScript code, if adds value
- [] No vulnerabilities or code smells
- [] Includes adequate level of logging to troubleshoot issues later
- [] Included necessary scripts/infrastructure-as-code to deploy this change automatically
- [] Updated documentation impacted by this change
- [] No console errors in browser, introduced by this change

repository: amalabey/eShopOnWeb

gha_language: C#

repo_name: amalabey/eShopOnWeb


text:
# Builds Vanilla Javascript

### Vanilla Javascript Projects

Mini Projects build with aim to learn JavaScript and Try what I learned to by working on Projects.

#### Features of Projects

- Every project is built with Vanilla JavaScript.
- Responsive Design

| #              |  Project              |  Live Demo                                                                       | Source Code |
| :------------- | :--------------------:| :------------------------------------------------------------------------------: |:------------------------------------------------------------------------------:|
|  01            | Cash Register         |[Live Demo](https://vaishnavme.github.io/builds-Javascript/Cash-Register/)        |[Source Code](https://github.com/vaishnavme/builds-Javascript/tree/main/Cash-Register)|
|  02            | Zen Beats - Music Player|[Live Demo](https://zenbeats.netlify.app/)        |[Source Code](https://github.com/vaishnavme/Zen-lofi-beats-player) |
|  03            | Currency Converter     |[Live Demo](https://vaishnavme.github.io/builds-Javascript/Currency-Converter/)  |[Source Code](https://github.com/vaishnavme/builds-Javascript/tree/main/Currency-Converter)|
|  04            | Carousel    |[Live Demo](https://vaishnavme.github.io/builds-Javascript/Carousel/)  |[Source Code](https://github.com/vaishnavme/builds-Javascript/tree/main/Carousel)|
|  05           | Search Bar    |[Live Demo](https://vaishnavme.github.io/builds-Javascript/Search-Bar/)  |[Source Code](https://github.com/vaishnavme/builds-Javascript/tree/main/Search-Bar)|

repository: vaishnavme/builds-Javascript

gha_language: CSS

repo_name: vaishnavme/builds-Javascript


text:
---
order: 1
title: Info
---

## zh-CN

展示处理结果

## en-US

Show processing results.

```js
import { Result, Button } from '@arco-design/web-react';

ReactDOM.render(
  <div >
    <Result
      title="Your operation has been performed."
      extra={<Button type="primary">Back</Button>}
    >
    </Result>
  </div>,
  CONTAINER
);
```


text:
---
title: Vincenzo
tags: tag1, tag2, tag3
category: Recommend
excerpt: Vincenzo Cassano, a South Korean-born Mafia lawyer in Italy, flees to his homeland after he finds himself caught in between two warring factions.
created: 2021-02-20
image: ./images/vincenzo.jpg
image_caption: Photo by VINCENZO/TVN
author: author3
---

## Plot Synopsis

> At the age of 8, Park Joo-Hyeong went to Italy after he was adopted. He is now an adult and has the name of Vincenzo Cassano (Song Joong-Ki). He is a lawyer, who works for the Mafia as a consigliere. Because of a war between mafia groups, he flees to South Korea. In South Korea, he gets involved with Lawyer Hong Cha-Young (Jeon Yeo-Bin). She is the type of attorney who will do anything to win a case. Vincenzo Cassano falls in love with her. He also achieves social justice by his own way.

## Cast and characters

- **Song Joong-ki** as Vincenzo Cassano / Park Joo-hyung

    An Italian lawyer and Mafia consigliere of Korean descent. He is the adopted son of the late boss of the Cassano Family. He is Geumga Plaza's true owner and usually wears a nice, fancy bespoke suit. He becomes an Advisor/Foreign Legal Counsel to Jipuragi Law Firm, working with Hong Cha-young to destroy the Babel Group and reclaim the gold hidden in Geumga Plaza.

- **Jeon Yeo-been** as Hong Cha-Young

    A lawyer who is an associate for the Wusang Law Firm and the daughter of Hong Yoo-chan. Energetic, she tends to overreact. She later replaces her father as CEO of Jipuragi Law Firm. She joins Vincenzo in his vendetta against Babel Group.

- **Ok Taec-yeon** as Jang Jun-woo / Jang Han-seok

    An intern in Wusang Law Firm working under lawyer Hong Cha-Young as her personal paralegal/assistant, and the true CEO of Babel Group. He puts on a front as a happy-go-lucky, dumb, and naive man. However, it soon becomes clear that he is the true power behind the Babel Group.

- **Kim Yeo-jin** as Choi Myung-hee

    A former prosecutor who quits the prosecutor’s office to join Wusang Law Firm as its new Senior Partner, and in the process becomes the corporate fixer and attorney to the Babel Group. She appears good-natured and enjoys Zumba dancing but is, in reality, extremely corrupt.

- **Kwak Dong-yeon** as Jang Han-seo

    The half-brother of Jang Jun-woo and the previous Chairman's illegitimate son who publicly acts as Chairman of Babel Group in his brother's place. He appears rude, cocky and pretentious. He doesn't have book smarts but has enough street smarts to take sides with Vincenzo against his brother.


text:
# Sporocybe grisea (Berk.) Goid., 1935 SPECIES

#### Status
SYNONYM

#### According to
The Catalogue of Life, 3rd January 2011

#### Published in
null

#### Original name
Pachnocybe grisea Berk., 1836

### Remarks
null

repository: mdoering/backbone

path: /life/Fungi/Ascomycota/Sordariomycetes/Microascales/Microascaceae/Cephalotrichum/Cephalotrichum purpureofuscum/ Syn. Sporocybe grisea/README.md

repo_name: mdoering/backbone


text:
In 2014–06–06 laurentmt [posted](https://bitcointalk.org/index.php?topic=279249.msg7170950#msg7170950) some thoughts on transaction entropy and address identification.

This later manifested itself as [oxt.me](https://oxt.me) — an powerful blockchain explorer.


text:
# xkcd-today
![screenshot of xckd-today](/screenshots/description.png?raw=true)

A simple Google Chrome extension, that quickly serves latest images from [xkcd.com](http://xkcd.com).

## Installation
### Automatic
Go to [releases](https://github.com/poxip/xkcd-today/releases) and follow instructions.
### Manual
Please, ensure you have [NodeJS Package Manager (npm)](https://www.npmjs.com/) installed:
* Debian/Ubuntu: `sudo apt-get install npm`
* Fedora: `sudo yum install npm`

```
git clone https://github.com/poxip/xkcd-today.git
cd xkcd-today
npm install
```
Then
* go to __chrome://extensions__ in Chrome, click __"Load extension without package"__ and select __xkcd-today/app__

or

* execute `./grunt build` and install built __.crx extension file__ from __dist__ directory

## License
The MIT License (MIT)

Copyright (c) 2015 [Michal Proszek](http://poxip.github.io)

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: poxip/xkcd-today

repo_name: poxip/xkcd-today


text:
# Default rendering

> WARNING
>
> Important
>
> To perform Status Screen Brick rendering, first perform the [initialization steps](/developers/en/docs/checkout-bricks/common-initialization) shared among all Bricks.

## Configure the Brick

Create Brick's startup configuration.

[[[
```Javascript
const renderStatusScreenBrick = async (bricksBuilder) => {
 const settings = {
   initialization: {
     paymentId: '<PAYMENT_ID>', // payment id to show
   },
   callbacks: {
     onReady: () => {
       /*
         Callback called when Brick is ready.
         Here you can hide loadings from your site, for example.
       */
     },
     onError: (error) => {
       // callback called for all Brick error cases
       console.error(error);
     },
   },
  };
  window.statusScreenBrickController = await bricksBuilder.create(
   'statusScreen',
   'statusScreenBrick_container',
   settings,
  );
};
renderStatusScreenBrick(bricksBuilder);
```
```react-jsx
const initialization = {
 paymentId: '<PAYMENT_ID>', // payment id to show
};
const onError = async (error) => {
 // callback called for all Brick error cases
 console.log(error);
};
const onReady = async () => {
 /*
   Callback called when Brick is ready.
   Here you can hide loadings from your site, for example.
 */
};
```
]]]

> WARNING
>
> Attention
>
> Whenever the user leaves the screen where some Brick is displayed, it is necessary to destroy the current instance with the command `window.statusScreenBrickController.unmount()`. When entering again, a new instance must be generated.

The `paymentId` that must be sent to Brick for its initialization is the ID returned by the [Payments API](/developers/en/reference/payments/_payments/post) when generating a payment with Mercado Pago.

## Render the Brick

Once the configurations are created, enter the code below to render the Brick.

> NOTE
>
> Important
>
> The id `statusScreenBrick_container` of the HTML div below should correspond to the value used in the method create() of the last step.

[[[
```html
<div id="statusScreenBrick_container"></div>
```
```react-jsx
import { StatusScreen } from '@mercadopago/sdk-react';

<StatusScreen
   initialization={initialization}
   onReady={onReady}
   onError={onError}
/>
```
]]]

The result of rendering the Brick should look like the image below.

<center>

![status-screen-Brick](checkout-bricks/status-screen-brick-en.jpg)

</center>

repository: mercadopago/devsite-docs

branch_name: refs/heads/development

repo_name: mercadopago/devsite-docs


text:
---
title: First release
type: major
---

**Supplement:**

* Added front matters **Overview**, **Tutorial**, and **Development**
* Added all documentations of **Core**
* Added some documentations of **Algorithm**:
	- ***Simulated Annealing***, ***Canonical DE***, ***Standard PSO***, ***NSGA-II***, and ***NSGA-III***
* Added some documentations of **Problem**:
* Added some documentations of **Utitlity**:
	- ***Nondominated sorting***


text:
[English][en]|[日本語][jp]|[简体中文][zh-chs]|[繁體中文][zh-cht]
-|-|-|-

[en]: /README.md
[jp]: /README.jp.md
[zh-chs]: /README.zh-chs.md
[zh-cht]: /README.zh-cht.md

# ER Mail

ER Mail is an e-mail client that can help you to assemble related emails into an aggregated view so that there is no need for you to click open them one by one.

## Getting started

### Run the program (UWP)

1. Run
1. Enter your mail info and then click "Sign in". *We'll not store user's password directly, it is managed by the operating system.*
1. Select a mail folder (INBOX is selected by default).
1. Select a mail from the mail list.
1. Wait and view your mail content, then you can click the Assemble Button on the app's bottom-right corner.
1. Then our classification algorithm will run with full-screen logs. *The algorithm is under developing so that it will result in nothing.*

## How to contribute

### Requirement

- Visual Studio 2017 (with version 15.3 or later)
    - .NET Standard 2.0
    - .NET Core 2.0
    - C# 7.2
    - NuGet (4.3 or later)
- UWP (C#) Windows SDK 10.0.16299.0
    - for building ERMail.Universal
- [Avalonia](https://github.com/AvaloniaUI/Avalonia) [Visual Studio Extension](https://marketplace.visualstudio.com/items?itemName=AvaloniaTeam.AvaloniaforVisualStudio)
    - for designing ERMail.Desktop

### Build and run

1. Ensure that your Windows device has developer mode enabled.
    - Goto Settings -> Update & Security -> For developers -> Developer mode
1. Switch your startup project from `ERMail.Desktop` to `ERMail.Universal`
    - It's not necessary if you'll contribute to Avalonia version.
1. Make sure your target device is `Local Machine` not a `Simulator`.
    - Goto project properties -> Debug -> Local Machine.

### Project structure

+ **.vscode** *If you debug this project using VSCode, this folder contains the build info and debug info.*
+ **docs** *Stores documentation of this project.*
    - **assets** *Images or other assets that is used by the documentation.*
+ **src** *The main source code.*
    - **ERMail.Core** *The main logic of this project. All the code here is cross-platform.*
    - **ERMail.Desktop** *The startup project targeting Avalonia UI Framework so that it could be cross-platform.*
    - **ERMail.Universal** *Windows 10 Specified startup project (UWP).*
    - You can add your own UI Framework here, but it should support .NET Standard 2.0.

### Roadmap

This is a project mostly for studying and experimenting new technology we're learning. But we'll also publish the product with these new technologies to increase efficiency and create value for each user.

1. [x] Basic UI
    - [x] for UWP
    - [ ] for Avalonia
    - *for Xamarin*
1. [x] Fetch mails
    - [x] from the remote server
    - [x] using local cache
1. [ ] Classify all emails via Machine Learning
    - [ ] NaiveBayesClassifier
    - [ ] other available machine learning technology
1. [ ] Word segmentation algorithm
    - *for English*
    - [ ] for 中文
    - *for other languages*
1. [ ] Publish
    - [ ] prepare UI assets for UWP
    - [ ] prepare UI assets for Avalonia
    - [ ] improve stability
1. *Introduce some other black technology*
1. *Analysis feedback data and improve them*

## Preview of the UI

![UWP Client](/docs/assets/2018-04-15-19-15-57.png)
▲ UWP Client

![Avalonia Client](/docs/assets/2018-04-15-19-18-15.png)
▲ Avalonia Client

repository: walterlv/ERMail

repo_name: walterlv/ERMail


text:
---
layout: cv
title: About Xiangyi Meng
header: About Xiangyi Meng
group: navigation
---
{% include JB/setup %}

# Xiangyi Meng
Student, Programmer, Primary Researcher<img width="100" src="https://raw.githubusercontent.com/xymeng16/xymeng16.github.io/master/_medias/img/xymeng.jpg">

## Overview

I am currently a undergraduate student in Department of Computer Science at Xiamen University since 2014.
My hometown is Shijiazhuang, Hebei, China. My research mainly focuses on Data Mining, Bioinformatics and
Security. My current interests are in graph mining, human action recognition and semi-supervised learning.
And I am preparing to study in Hong Kong after graduating from XMU.
The full pdf version of my resume can be downloaded [here](https://github.com/xymeng16/xymeng16.github.io/raw/master/ENG_CV_Xiangyi_Meng.pdf).

## Education

`2014-2018`
__Xiamen University, Xiamen, China__, _B.E. in Computer Science_

## Publications
### 2017
1. __Xiangyi Meng__, Rui Xu, Xuantong Chen, \*Lingxiang Zheng, et al., Human Action Classification in Basketball: A
Single Inertial Sensor Based Framework, *The 6th International Conference on Frontier Computing (FC 2017),
Osaka, Japan*
2. Yizhen Wang, __Xiangyi Meng__, \*Lingxiang Zheng, et al., A Smartphone Inertial Sensor Based Recursive
Zero-Velocity Detection Approach, *The 6th International Conference on Frontier Computing (FC 2017), Osaka, Japan*

## Selected Awards

`2014-2015`
National Scholarship
`2014-2015`
Outstanding Merit Student, Xiamen University
`2015-2016`
Excellent Young Volunteer, Xiamen University
`2016.1`
Successful Participant, 2016 *Interdisciplinary Contest In Modeling*
`2016.8`
First prize of the *6th "Huawei Cup" AI Designing Competition of University Students in China*
`2016-2017`
Excellent Student Cadre, Xiamen University
`2016-2017`
Scholarship for Academic Innovation, Xiamen University
`2016-2017`
Xiamen International Bank Scholarship, Xiamen University

## Researches

<!-- A list is also available [online](http://scholar.google.co.uk/citations?user=LTOTl0YAAAAJ) -->

### A keyword-based auto generating system for Chinese couplets
_Advisor: Prof. Xuling Zheng_
- Novelly expand the current method for couplets generating based on a given sentence to an approach using given
  keyword.
- A phrase-based SMT model is deployed to generate the initial couplet pairs and an approach for optimizing the
  quality of the couplets based on immune algorithm is proposed.
- An SVM is trained for the evaluation of the couplets using manually pre-labeled couplets.

### A basketball shooting training and motion tracking system via machine learning
_Advisor: Lingxiang Zheng, Senior Engineer_
- A neural network embedded on Intel Curie is applied for the evaluation of the shooting performance using
  features extracted from accelerometer and gyrometer data.
- Inspired by Robotics, we constrained the possible location of the joints in the arm into certain spaces represented
  as point-clouds, aiming at simulating the shooting motion.
- A modified hidden Markov Model is proposed to track the motion of shooting, which its states are defined in the
  spaces of the point-clouds.

### Iteratively collective prediction of disease-gene associations through the incomplete network
_Advisor: Prof. Xiangxiang Zeng_
- We studied the similarity measure of the nodes in heterogeneous network and came up with “weighted path count
  with random walk” to fit the complex topological architecture.
- PU learning is studied and integrated into the classification method in view of negative samples in gene-disease
  link datasets are extremely scarce.
- Being different with state-of-the-art singleton approach, an iterative framework for link prediction on
  heterogeneous network is proposed and deployed on gene-disease link prediction.
- The source code is published at my GitHub:[xymeng16/ISL4LP](https://github.com/xymeng16/ISL4LP).

### A Django based online Q&A system
_[Xiamen University Turing Class Online System](http://turing.ymyin.me/)_
- Inspired by [Stackoverflow.com](Stackoverflow.com), we developed an similar online QA website based on the Django framework to
  provide a platform for the teachers and students at XMU to communicate with each other.
- Currently, our project is still being developing, and it has 4 basic functions: User Control, Q&A, Online Test, File
  Upload&Download.
- Our project is deployed on a Ubuntu server at Ali Cloud using uWSGI and Nginx.

## Skills
__Experienced__: C, C++, C#, MATLAB, Latex, Python, Git, Linux
__Amateur__: Java, Web Development, Tensorflow

Last Updated: May 2017


text:
---
layout: default
title: assertNotVisible(locator)
parent: web
tags: command web
comments: true
---

### Description

- This command is to assert element if not visible on the page.
- In other words this command will assert the element on the page with is available but not visible.
- The command will look for the element and assert for not visible if found the command will pass or else fail otherwise.

### Parameters

- **locator** - this parameter is the locator of the element.

### Example

![](image/assertNotVisible_01.png)

**Output**:<br/>
![](image/assertNotVisible_02.png)

### See Also

- [`assertVisible(locator)`](assertVisible(locator))

repository: nexiality/documentation

repo_name: nexiality/documentation


text:
Static handlers
===============

Purpose
-------

Static handlers are a built-in REST handler for serving files. They
are available as a convenience and provide fast file serving with
proper cache handling.

It is recommended to use a Content Distribution Network (CDN) or at
least a dedicated file server running on a dedicated cookie-less
hostname for serving your application's static files in production.

Usage
-----

Static handlers are pre-written REST handlers. They only need
to be specified in the routing information with the proper options.

The following example routing serves all files found in the
`priv_dir/static/` directory of the application. It uses a
mimetypes library to figure out the files' content types.

``` erlang
Dispatch = [
	{'_', [
		{"/[...]", cowboy_static, [
			{directory, {priv_dir, static, []}},
			{mimetypes, {fun mimetypes:path_to_mimes/2, default}}
		]}
	]}
].
```


text:
## hg
```bash
hg log | grep "user:" | sort | uniq -c | sort -r
git log | grep "Author:" | sort | uniq -c | sort -r
#result
26 Author: lujian<EMAIL_ADDRESS>4 Author: lukye<EMAIL_ADDRESS>1 Author: Lu-Kye<EMAIL_ADDRESS>```

## compile csharp into dll file
[LINK](https://kenno.wordpress.com/2007/02/16/compiling-c-souce-code-as-a-dynamic-link-librarya/)

```bash
mcs -r:/Applications/Unity4.6.6/Unity.app/Contents/Frameworks/Managed/UnityEngine.dll -target:library -out:$dllname.dll csname.cs
```

## git
```bash
#get revision
git log --pretty=oneline -1|awk {'print $1'}
```

## ssh
```bash
#Write file to remote
cat Downloads/develop/Test.sh | ssh user@hostname 'cat >> Test.sh'
#Save public ssh key to remote
cat ~/.ssh/id_rsa.pub | ssh user@hostname 'cat >> .ssh/authorized_keys'
```

## xcode
```bash
xcodebuild -project $projectname.xcodeproj -scheme $schemename -configuration Debug
```

## unzip
```bash
unzip force overwriting all: unzip -o xxxx.zip
```

## remove files with extension recursively
```bash
find . -name "*.extension" -type f -delete
```


text:
Task description
A zero-indexed array A consisting of N integers is given. A triplet (P, Q, R) is triangular if 0 ≤ P < Q < R < N and:

```
A[P] + A[Q] > A[R],
A[Q] + A[R] > A[P],
A[R] + A[P] > A[Q].
```
For example, consider array A such that:

```
  A[0] = 10    A[1] = 2    A[2] = 5
  A[3] = 1     A[4] = 8    A[5] = 20
```
Triplet (0, 2, 4) is triangular.

Write a function:

```
function solution(A);
```

that, given a zero-indexed array A consisting of N integers, returns 1 if there exists a triangular triplet for this array and returns 0 otherwise.

For example, given array A such that:

```
  A[0] = 10    A[1] = 2    A[2] = 5
  A[3] = 1     A[4] = 8    A[5] = 20
```
the function should return 1, as explained above. Given array A such that:

```
  A[0] = 10    A[1] = 50    A[2] = 5
  A[3] = 1
```
the function should return 0.

Assume that:

N is an integer within the range [0..100,000];
each element of array A is an integer within the range [−2,147,483,648..2,147,483,647].
Complexity:

expected worst-case time complexity is O(N*log(N));
expected worst-case space complexity is O(N), beyond input storage (not counting the storage required for input arguments).
Elements of input arrays can be modified.

```javascript
function solution(A) {
    A.sort((a, b) => (a - b))

    for (var i = 0; i < A.length - 2; i++) {
        var p = A[i],
            q = A[i + 1],
            r = A[i + 2]

        if (p + q > r &&
            q + r > p &&
            r + p > q)
            return 1
    }

    return 0
}
```


text:
GitHub to Trello Migration
=========================

__Author:__ Joni Halabi (www.jhalabi.com)

Description
-----------

This page/script allows you to migrate GitHub tickets into Trello.

Prerequisites
--------------------

1. GitHub account with a repository containing tickets.
2. Trello account with a board to.

Notes
--------------------

* To get your GitHub token, log into your account and go to Settings -> Personal access tokens.

* Get your Trello app key from https://trello.com/1/appKey/generate. You must be logged into you Trello account.

* There is a limitation in Trello where comment attribution from another system cannot be carried over.  All comments imported into Trello must be attributed to whomever is logged in (i.e. running this script) at the time.

repository: thatdevgirl/github-to-trello

repo_name: thatdevgirl/github-to-trello


text:
# Examples of Prometheus community helm chart configuration to ingest metrics to AMP

Please use the following steps to set up ingestion from a Prometheus server in Kubernetes to your Amazon Prometheus Service workspace:
 - [existing Prometheus server](https://docs.aws.amazon.com/prometheus/latest/userguide/AMP-onboard-ingest-metrics-existing-Prometheus.html#AMP-onboard-existing-Prometheus-IRSA)
 - [new Prometheus server](https://docs.aws.amazon.com/en_us/prometheus/latest/userguide/AMP-onboard-ingest-metrics-new-Prometheus.html)


text:
poe-assets-proxy
===================

Share assets across applications

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

```sh
$ npm install --save poe-assets-proxy
```

Usage
-----

```js
// app.js
var proxy = require(poe-assets-proxy');
var db = require('./db');

var app = module.exports = proxy(db, {
  secret: 'MY_SHARED_SECRET' // this secret should be shared across app servers and be sent every time there is a manifest update
});
```

```js
// db.js
exports.replace = function(name, manifest, cb) {
  // will be called anytime there is a new manifest
};

exports.lookup = function(path, cb) {
  // will be called anytime there is a request for an asset.
  // this function should cb() an array of endpoints that host
  // the particular asset
}
```

Tests
-----

```sh
$ npm test
```

repository: poegroup/poe-assets-proxy

repo_name: poegroup/poe-assets-proxy


text:
# MedCheck

## Description

As an elderly user, I want to track my prescriptions, medications and doctor appointments so that all this information is in one progressive mobile application.

### Motivation:

We  understand  that  many  of  us  require  numerous  medications as we get older. Often we are also caring for elderly parents and relatives who have  multiple  medical  conditions and doctors. Both, families and ailing patients,  can struggle to keep all this information  in  one  easily  accessible space – a mobile phone.

### Future Improvements:
* APIs
    * Medicatation Interactions
    * Doctor Information

## Installation

Here's a link to the deployed app:
[Link to MedCheck App](https://medcheck-project.herokuapp.com)

## Usage

GIVEN a MedCheck mobile app with form inputs
WHEN I Click here to sign-up
THEN I am presented with two form inputs to enter email address and password to create account
WHEN I enter email address and password on login page
THEN I am presented with the home screen with the buttons for medications, doctors and appointments
WHEN I click on Medications
THEN I am presented with the medications entered with the option to delete any of them, button to add medication and home button
WHEN I click on Add Medications
THEN I am presented with form inputs to enter relevant information to submit medication, button to return to Medications page and Home button
WHEN I click on Doctors
THEN I am presented with the doctors entered with the option to delete any of them, button to add add doctors and home button
WHEN I click on Add Doctors
THEN I am presented with form inputs to enter relevant information to submit doctor information, button to return to Doctors page and Home button
WHEN I click on Appoihtments
THEN I am presented with the appointments entered with the option to delete any of them, button to add add appointments and home button
WHEN I click on Add Appointments
THEN I am presented with form inputs to enter relevant information to submit appointment information, button to return to Appointments page and Home button
WHEN I click on Logout
THEN I am logged out of app and return to login page

The following images demonstrate the application functionality:

![MedCheck login demo](./login.png)
![MedCheck sign up demo](./signup.png)
![MedCheck home demo](./logout.png)
![MedCheck medications demo](./meds.png)
![MedCheck add med demo](./addmed.png)
![MedCheck doctors demo](./doctors.png)
![MedCheck add doctors demo](./adddoc.png)
![MedCheck appts demo](./appts.png)
![MedCheck add appt demo](./addappt.png)

## Credits

### jeaninney

### mtgovern

### JEpps2020

### amsgwbootcamp

## License

repository: Jeaninney/MedCheck

repo_name: Jeaninney/MedCheck


text:
browser->server: HTTP GET https://studies.cs.helsinki.fi/exampleapp/notes
server->browser: HTML-code
browser->server: HTTP GET https://studies.cs.helsinki.fi/exampleapp/main.css
server-->browser: main.css
browser->server: HTTP GET https://studies.cs.helsinki.fi/exampleapp/main.js
server-->browser: main.js

note over browser:
browser starts executing js-code
that requests JSON data from server
end note

browser->server: HTTP GET https://studies.cs.helsinki.fi/exampleapp/data.json
server-->browser: [{ content: "test", date: "2021-07-19T10:51:43.342Z" }, ...]

note over browser:
browser executes the event handler
that renders notes to display
end note

note over browser:
User fill the form and click the submit button
end note

browser->server: HTTP POST https://studies.cs.helsinki.fi/exampleapp/new_note
server->browser: HTTP 302 redirect
browser->server: HTTP GET https://studies.cs.helsinki.fi/exampleapp/notes
server->browser: HTML-code
browser->server: HTTP GET https://studies.cs.helsinki.fi/exampleapp/main.css
server-->browser: main.css
browser->server: HTTP GET https://studies.cs.helsinki.fi/exampleapp/main.js
server-->browser: main.js

note over browser:
browser starts executing js-code
that requests JSON data from server
end note

browser->server: HTTP GET https://studies.cs.helsinki.fi/exampleapp/data.json
server-->browser: [{ content: "test", date: "2021-07-19T10:51:43.342Z" }, ...]

note over browser:
browser executes the event handler
that renders notes to display
end note


text:
If you're reading this, it is because `chainlink.h` is so new, it has not even been properly tested.
It should work fine, with at most slight modification: but *caveat emptor*!

# chainlink

`chainlink.h` is a collection of convenience functions that provide basic support for
closures, boxed arrays, and tagged unions. It attempts to be transparent, robust, and portable,
and does not intend to change the way C is written. Rather, our only goal here is to
provide a little syntactic sugar for doing things C programmers already regularly do, and
to support idiomatic C coding, rather than to replace it. Therefore, chainlink is intended to
"play nice" with C's ordinary type system, and chainlink-using programs should produce "normal"
compilation errors if the code contains typing errors.

Originally, `chainlink` was planned to be written as a proper extension, with the same goals as above,
and with the additional features of conforming rigorously to a simple specification, providing
more general mixin-like functionality, and allowing some limited type inference via structural subtyping,
with a couple compilation flags to give rules on how much inference is allowed. However, the
complete version of `chainlink` would have taken quite a bit of effort to write, and it seemed a little
silly to write an entire C extension solely for my personal use. `chainlink` proper might still happen,
someday, but only if I (or you!) find a reason to make it.

The `chainlink.h` file is less than 200 lines of standard C and depends only on a couple things:

 * the compiler extension `__typeof__`
 * `memset(), malloc(), and realloc()`
 * C99 structure literals with designated initializers

It is hoped that people who wish to use chainlink.h will be able to read the file and understand how it works,
so that they may do so without making wrong assumptions about what chainlink should do. It is also hoped that
libraries which use chainlink will be written to be compatible with libraries which do not use chainlink.

## coding style

The recommended way to use chainlink.h is to follow the Linux kernel style guide, to use .n for the length of an array,
and to use .t for the type of a union. I disagree with Linus essentially in only one place: I like the one-line "if" statement.
Also, he would probably hate `chainlink.h`, so don't try to use it in the kernel (duh).

It is also recommended that you do not sit and code for more than three hours at a time. Go take a walk outside. Also, though
the style guide occasionally makes reference to staying up for twenty hours until you can barely recognize indentation,
don't do that.

# usage examples

The accumulator example from [Paul Graham's *Revenge of the Nerds*](http://www.paulgraham.com/icad.html) may be written thus:

```c
link(accum, int foo;);

chainfunc(int, accum, int bar) {
	return accum.foo + bar;
}

int main(int argc, char **argv) {
	int a = 1, b = 2, c = 3;
	chainfunc_decl(accum, a_plus, a);
	a = 4;
	chainfunc_decl(accum, a_plus2, a);
	printf("1 + 2 = %d, 4 + 3 = %d\n", cl_call(a_plus, b), cl_call(a_plus2, c));
	return 0;
}
```

repository: scythe/chainlink

repo_name: scythe/chainlink


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

### Description

Pixelimity 1.0 has cross-site request forgery via the admin/setting.php data [Password] parameter.

### POC

#### Reference
- http://packetstormsecurity.com/files/161276/Pixelimity-1.0-Cross-Site-Request-Forgery.html
- https://github.com/pixelimity/pixelimity/issues/20

#### Github
No PoCs found on GitHub currently.

repository: trickest/cve

repo_name: trickest/cve


text:
**TO DO**
[x] create migrations
[x] manually add seed data
*[ ] scrape wikipedia for artists and artworks (for seed data?)*
[x] create models
[x] set up model relationships and validations
[x] test models via tux
  [x] test validations
  [x] test relationships
[x] seed database with artists and artworks
[x] set up controller files
[x] enable sessions in ApplicationController
[x] set up basic views
[x] set up routes
[x] test to make sure views work before elaborating on them
[x] user auth
  [x] sign up
  [x] login
  [x] user auth for individual pages
    [x] view a collection
    [x] users can only view/edit their own collections
*[ ] nav bar*
  [x] signup/login/logout
  [x] view artists
  [x] view artworks
  [x] user profile
  [ ] different depending on the page (but in html/css not erb conditionals)?
    (https://github.com/sydra08/exceptional-realty-bootstrapped/blob/master/new-properties.html)
  [x] remove conditionals from the navbar on pages what require the user to be logged in
[x] browse artworks
    [x] sort alphabetically?
    [ ] sort by artist?
[x] browse artists
    [ ] sort alphabetically?
    [x] sort by number of works?
[x] create a collection
  [x] add a name (required)
  [x] add any existing artworks to your collection
    [x] if none are chosen should there be a message like "this collection is empty! add some artworks to get started"
[ ] view a collection (but also the view that will link to the edit collection functions)
  *[ ] can edit the collection's name => would this just patch to the same route, but only have 1 input field?*
  [x] can remove artworks from a collection on this page (trash icon)
  [x] button to 'add new artwork'
    [x] can add ONE from the list of existing artworks
    [x] OR can add/create a new artwork
      [x] field for name (required)
      [x] field for year (optional)
      [x] field for artist
        [x] can choose from list of existing artists or create a new artist (only by name)
          [ ] make it so that if the "Other" option is selected then the name is required for the artist
        *[ ] should artworks be required to have an artist? or should there be a default value of "unknown"*
      *[ ] if an artwork starts with the word "the" you can run a search for it with and without the "the"
[x] edit a collection (add/remove existing works, update collection name)*
[x] delete a collection
  *[x] add a pop up confirmation*
[x] add error messages
  *[ ] look into AR validation messages http://edgeguides.rubyonrails.org/active_record_validations.html*
  [ ] flash messages
    [x] add flash messages to controllers
    *[ ] flash messages don't always show up properly...does this have to do with when there are multiple in a route or page?*
    [ ] maybe have standard flash messages that correspond to different actions?
      [ ] flash[:success] = "Action successful"
      [ ] flash[:failure] = "Unable to do that thing"
      [ ] flash[:auth] = "You must be logged in to do that"
      [ ] flash[:intruder] = "You cannot edit another user's collection"
    [ ] have flash messages that are determined based on the error message from the object?
*[ ] input validations*
  [x] when a user adds an artwork, should they be able to add "Mona Lisa" if "The Mona Lisa" exists?
[ ] maybe remove the 'browse artist' view for now?
*[x] style views*
[x] decide if i want to have default values for things in tables or just handle another way in erb

Misc
[x] style the input boxes differently
[ ] fix the padding on the sidebar div on the homepage
[ ] style the checkbox lists differently
[x] change the background color
[x] find a new google font?
[x] why are the edit routes showing up with ? at the end...need to investigate buttons more when I work on styling the routes
[x] add trash can and pen icons to the "all collections" view
[x] add trash can and pen icons to the "single collection" view
[x] add http://google.github.io/material-design-icons/ to fonts (icons)
  [x] edit = mode_edit
  [x] delete = delete

[x] should ids or slugs be used => is it bad practice to expose the id of an object?
[x] when you're creating a collection should you be able to select from a dropdown menu?
[x] review all of the messages/verbiage before submitting
[x] how can I make it so that form buttons look prettier
[x] figure out how to replace the form buttons with other icons
[x] research what the best way to pass information between views/routes is and not stuff from user input. should you still use params?

Required for go live
[x] reset database and re-seed before submitting

[x] write readme.md
[x] fill out spec.md
[x] remember to log test user out before submitting and running migrations
[ ] add user to seeds.rb so there's something to run user validations against?

Enhancements/Improvements for a later iteration
+ if you add an artist to your collection, by default all of the artworks are checked off
+ collections can have a description
+ have different navbar sections?
+ allow users to add/edit artworks in the database?
+ allow users to add/edit artists in the database?

Items for Refactoring
[ ] have /collections/:collection_id/ routes inside ArtworksController for
  [ ] edit (adding artworks)
  [ ] show (displaying collection)
[ ] look for more repetitive code instances => ie. authenticate_user situation
[ ] write out tests!
  [ ] start with small unit tests on models
  [ ] then work on association tests with the Shoulda gem
*It's like running a marathon - you start with running a mile or 2 and then build up from there*

**Basic Outline of App**

+ A user can create a collection
+ A user can view, edit and delete a collection that belongs to them
  + A user can view their collection by artist or by artworks
+ When a user creates a new collection they can add a new or existing artwork or a new or existing artist to their collection
  + If a user adds an artist to their collection, they will be prompted to select which pieces by an artist they would like to add to the collection
+ A user cannot delete an artwork or an artist from the database
+ A logged in user can view a list of all the artists in the database
+ A logged in user can view all of the artworks in the database
+ A logged in user can view a single artist and all of the associated artworks
+ A logged in user can view a single artwork and the artist it is associated with

**Model Relationships**

+ An artist has_many artworks

+ An artwork belongs_to an artist
+ An artwork has_many collections through collection_artworks

+ A collection has_many artists through artworks
+ A collection has_many artworks through collection_artworks
+ A collection has_many collection_artworks

+ A user has_many user_collections
+ A user has_many collections through user_collections

+ A user_collection belongs_to a user
+ A user_collection belongs_to a collection

+ A collection_artwork belongs_to an artwork
+ A collection_artwork belongs_to a collection

**Questions**

Seed DB - top 25-50 artists & top 25-50 artworks?
Can a user add an artist without any artworks?
If a user tries to add an artist that already exists they are denied?


text:
# iBaby Smarthome Application
This application is designed to show how to connect 1 or more EMSKs and **iBaby Smarthome Gateway** using embARC. The connection between EMSK and Gateway is based on **LwM2M** protocol as shown in the following figure. All the iBaby nodes interact with AWS IoT through the Gateway indirectly.

## Introduction
**iBaby Infant Sleep Monitoring System**

### Function

![ibaby_function](http://i.imgur.com/tspan1C.png)

### System architecture

![system_architecture](http://i.imgur.com/3hqxrJJ.png)

## Hardware and Software Setup
### Required Hardware
- 1 [DesignWare ARC EM Starter Kit(EMSK)](https://www.synopsys.com/dw/ipdir.php?ds=arc_em_starter_kit)
- 1 [Digilent PMOD WiFi(MRF24WG0MA)](http://store.digilentinc.com/pmodwifi-wifi-interface-802-11g/)
- 1 [Acceleration sensor MPU6050](https://www.invensense.com/products/motion-tracking/6-axis/mpu-6050/)
- 1 [Heartrate sensor MAX30102](http://www.electronics-lab.com/max30102/)
- 1 [Temperature sensor MLX90614](https://developer.mbed.org/components/MLX90614-I2C-Infrared-Thermometer/)
- 1 SD Card
- WiFi Hotspot(SSID:**embARC**, Password:**qazwsxedc**, WPA/WPA2 encypted)
- PC or Raspberry Pi for running iBaby Smarthome Gateway program

We designed integrated module for 3 sensors above, I'll call it **Foot Ring Module**. The physical picture of wearable node is as follows:

![wearable_node](http://i.imgur.com/QofeNaG.jpg)

### Required Software
- Metaware or ARC GNU Toolset
- Serial port terminal, such as putty, tera-term or minicom
- [iBaby Smarthome Gateway](https://github.com/XiangcaiHuang/ibaby.git)
- [iBaby Freeboard UI](https://github.com/XiangcaiHuang/ibaby.git)

### Hardware Connection
1. EMSK 1 implement **wearable** node, as an intelligent foot ring for baby, it will publish baby's status to AWS IoT Cloud via the Gateway, including body temperature, heartrate, sleep-wake state, motion intensity and some warning information. We can view all data on the Freeboard UI.
   - Connect PMOD WiFi to J5, connect Foot Ring Module to J4.
2. Configure your EMSKs with proper core configuration.

## User Manual
### Before running this application
Firstly, download source code of **iBaby Smarthome Gateway** and **iBaby Freeboard UI** from github. Then you need an AWS account, and create things for ibaby nodes, generate and save the certs for different nodes, and modify specific `config.js`(path: ./ibaby_smarthome_gateway/config.js) for your project.

Secondly, run the iBaby Smarthome Gateway, open the browser and type IP address of the Gateway to access user interface. You can push iBaby Freeboard UI to github so that it can support remote access data.

|  EMSK Implemented Node   |    AWS IoT Thing      |     Source Folder      |
| ------------------------ | --------------------- | ---------------------- |
|      wearable node       |        ibaby          |   src/wearable_node    |

The hardware resources are allocated as following table.

|  Hardware Resource  |            Function                                           |
| ------------------- | ------------------------------------------------------------- |
|  MPU6050            | Acceleration sensor                                           |
|  MAX30102           | Heartrate sensor                                              |
|  MLX90614           | Body temperature sensor                                       |
|  PMOD WiFi          | Provide WiFi Connection                                       |

### Run this application

Modify the setting for connecting to the LwM2M Server(Gateway), as shown below (path: src/wearable_node/function/lwm2m.c) :

		const static char *p_port   = (char *)"5683";    /* lwm2mServer's port and IP */
		const static char *p_server = (char *)"<IP_ADDRESS>";
		const static char *p_client_name = (char *)"wn"; /* name of lwm2m client node */

Here take **EMSK2.2 - ARC EM11D** with Metaware Toolset for example to show how to run this application.

1. We need to use embARC 2nd bootloader to automatically load application binary for different EMSK and run.

2. Open your serial terminal such as Tera-Term on PC, and configure it to right COM port and *115200bps*.

3. Interact using EMSK and Freeboard.


text:
# node-fileset

Exposes a basic wrapper on top of
[Glob](https://github.com/isaacs/node-glob) /
[minimatch](https://github.com/isaacs/minimatch) combo both written by
@isaacs. Glob now uses javascript instead of C++ bindings and make it
usable in node 0.6.x and windows platforms.

[![Build Status](https://secure.travis-ci.org/mklabs/node-fileset.png)](http://travis-ci.org/mklabs/node-fileset)

Enable multiples patterns matching, and include exlude ability. This is
bascially just sugar API syntax where you can specify a list of includes
and optionnal exclude patterns. It works by setting up the necessary
miniglob "fileset" and filtering out the results using minimatch.

## install

    npm install fileset

## usage

Can be used with callback or emitter style.

* **include**: list of glob patterns `foo/**/*.js *.md src/lib/**/*`
* **exclude**: *optional* list of glob patterns to filter include
  results `foo/**/*.js *.md`
* **callback**: *optional* function that gets called with an error if
  something wrong happend, otherwise null with an array of results

The callback is optional since the fileset method return an instance of
EventEmitter which emit different events you might use:

* *match*: Every time a match is found, miniglob emits this event with
  the pattern.
* *include*: Emitted each time an include match is found.
* *exclude*: Emitted each time an an exclude match is found and filtered
  out from the fileset.
* *end*:  Emitted when the matching is finished with all the matches
  found, optionnaly filterd by the exclude patterns.

#### callback

    var fileset = require('fileset');

    fileset('**/*.js', '**.min.js', function(err, files) {
      if (err) return console.error(err);

      console.log('Files: ', files.length);
      console.log(files);
    });

#### event emitter

    var fileset = require('fileset');

    fileset('**.coffee README.md *.json Cakefile **.js', 'node_modules/**')
      .on('match', console.log.bind(console, 'error'))
      .on('include', console.log.bind(console, 'includes'))
      .on('exclude', console.log.bind(console, 'excludes'))
      .on('end', console.log.bind(console, 'end'));

fileset returns an instance of EventEmitter, with an `includes` property
which is the array of Fileset objects (inheriting from
`miniglob.Miniglob`) that were used during the mathing process, shoud
you want to use them individually.

Check out the
[tests](https://github.com/mklabs/node-fileset/tree/master/tests) for
more examples.

## tests

just run `npm test`

## why

mainly as a build tool with cake files, to provide me an easy way to get
a list of files by either using glob or path patterns, optionnaly
allowing exclude patterns to filter out the results.

All the magic is happening in
[Glob](https://github.com/isaacs/node-glob) and
[minimatch](https://github.com/isaacs/minimatch), check them out !

repository: CodingGazelles/TodoMap

repo_name: CodingGazelles/TodoMap


text:
# Microsoft-Teams Plugin

Post your release notes to a Microsoft teams channel.

## Installation

This plugin is not included with the `auto` CLI installed via NPM. To install:

```bash
npm i --save-dev @auto-it/microsoft-teams
# or
yarn add -D @auto-it/microsoft-teams
```

## Usage

To use the plugin include it in your `.autorc`.
To generate incoming webhook in microsoft teams, checkout [this blog](https://medium.com/@ankush.kumar133/get-started-with-microsoft-team-connectors-incoming-webhook-a330657993e7).

```json
{
  "plugins": [
    ["microsoft-teams", { "url": "https://url-to-your-hook.com" }],
    // or
    ["microsoft-teams", "https://url-to-your-hook.com"],
    // or
    [
      "microsoft-teams",
      { "url": "https://url-to-your--hook.com" }
    ]
    // Below: Uses microsoft-teams hook set in process.env.MICROSOFT_TEAMS_WEBHOOK_URL
    "microsoft-teams"
  ]
}
```

repository: intuit/auto

gha_language: TypeScript

repo_name: intuit/auto


text:
### Contents
---
 [Head](#head) - [Install](#install) - [Use](#usage) - [Testing](#testing) - [Questions](#questions)

---
# **README-generator**

### Description

A simple command line application for generating clean professional README.md files based off user given inputs.

###  License
[![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg)](https://opensource.org/licenses/MIT)

---

#  Installation

Recommended: Install via GitHub clone

For installation, either fork a copy to your own github profile, or feel free to clone directly from this repository into a desired location on your computer

This version of the generator is dependant on node.js, and the inquirer package. If you do not have node installed, download the LTS version [here](https://nodejs.org/en/download).
(for a quick start quide, check [here](https://nodejs.org/en/docs/guides/getting-started-guide/).)

Then to ensure inquirer is installed, navigate to the working directory where you cloned the repository, and first create a local package.json:
  ```bash
    npm init
  ```
and then install:
  ```bash
    npm i
  ```

---

##  Usage

To USE the generator, while still in the working directory of the cloned repository, run in the command line:

  ```bash
    node index.js
  ```
And then just follow the prompt to generate a README in the same directory as where the program is installed.

---

## Contribution guidelines

For the foreseeable future this project will not be accepting any contributions, but if you would still like to get in touch with me about something, my contact information is below.

  ---

##  Questions?

Reach out:
> [Github](https://github.com/Keaton-Brewster)
<EMAIL_ADDRESS>

---

### Technologies utilized:
javascript
node.js
[inquirer](https://www.npmjs.com/package/inquirer)

repository: Keaton-Brewster/README-Generator

repo_name: Keaton-Brewster/README-Generator


text:
# javaOIDCMessage

 NOTE: Work in progress. Part of the source code is copied from https://github.com/GJWT/java-jwt/tree/secondPR.

## Introduction

The [OpenID Connect (OIDC)](http://openid.net/specs/openid-connect-core-1_0.html) and [OAuth2](https://tools.ietf.org/html/rfc6749) standards define request and response messages - requests that are sent from clients to servers and responses from servers to clients.

This library allow us to:
* Instantiate and modify OIDC and OAuth2 messages from scratch or set of claims
* Verify the validity of the messages as well as the correctness of the claims that they contain
* Serialize the message into the correct on-the-wire representation (e.g. Json, URL encoded, JWT)
* Deserialize a received message from the on-the-wire representation (e.g. Json, URL encoded, JWT)

## Basic usage

All the messages implement the interface _org.oidc.msg.Message_. The OAuth2 -specific messages can be found from the _org.oidc.msg.oauth2_ package, as OIDC -specific messages are located at the _org.oidc.msg.oidc_ package.

The messages can be constructed from scratch and the claims added one by one:

```java
import org.oidc.msg.oidc.AuthenticationRequest;

...

	AuthenticationRequest message = new AuthenticationRequest();
	message.addClaim("response_type", "code");
	message.addClaim("client_id", "s6BhdRkqt3");
	message.addClaim("state", "xyz");
	message.addClaim("redirect_uri", "https://client.example.com/cb");

...

```

Or an use existing _Map_ can be exploited to provide the claims for the message constructor:

```java
import java.util.HashMap;
import java.util.Map;
import org.oidc.msg.oidc.AuthenticationRequest;

...

	Map<String, Object> claims = new HashMap<>();
	claims.put("response_type", "code");
	claims.put("client_id", "s6BhdRkqt3");
	claims.put("state", "xyz");
	claims.put("redirect_uri", "https://client.example.com/cb");
	AuthenticationRequest message = new AuthenticationRequest(claims);

...

```

## Serialization / deserialization

Since all the messages are used in an environment where information are to be sent over a wire it must be possible to serialize the information in such an instance to a format that can be transmitted over-the-wire.

Because of this a number of method has been added to support serialization to and deserialization from a number of representations that are used in the OAuth2 and OIDC protocol exchange.

The following three formats are supported:

* [JSON](https://www.json.org/)
* URL-encoded as defined in [RFC 3986](https://www.ietf.org/rfc/rfc3986.txt)
* JSON Web Token ([JWT](https://www.ietf.org/rfc/rfc7519.txt)) signed and/or encrypted.

An example using URL encoding:

```java
import org.oidc.msg.oidc.AuthenticationRequest;

...

	AuthenticationRequest message = new AuthenticationRequest();
	message.addClaim("response_type", "code");
	message.addClaim("client_id", "s6BhdRkqt3");
	message.addClaim("state", "xyz");
	message.addClaim("redirect_uri", "https://client.example.com/cb");
	System.out.println(message.toUrlEncoded());
...

```
```
?response_type=code&state=xyz&redirect_uri=https%3A%2F%2Fclient.example.com%2Fcb&client_id=s6BhdRkqt3
```

Another example using JSON:

```java
import java.util.Arrays;
import org.oidc.msg.oidc.RegistrationRequest;

...

	RegistrationRequest message = new RegistrationRequest();
	message.addClaim("redirect_uris", Arrays.asList("https://client.example.com/cb", "https://client.example.com/cb2"));
	message.addClaim("response_types", Arrays.asList("code"));
	message.addClaim("application_type", "web");
	System.out.println(message.toJson());
...

```
```
{"application_type":"web","redirect_uris":["https://client.example.com/cb","https://client.example.com/cb2"],"response_types":["code"]}
```

And finally example using JWT, where also a _Key_ is needed for signing the JWT:

```java
import java.util.Arrays;
import java.util.Date;
import org.oidc.msg.oidc.IDToken;

...

    IDToken message = new IDToken();
    message.addClaim("iss", "https://issuer.example.com");
    message.addClaim("aud", Arrays.asList("https://client.example.com"));
    message.addClaim("sub", "mockSubject");
    message.addClaim("iat", new Date());
    Key key = new SYMKey("sig", "mockSecret");
    System.out.println(message.toJwt(key, "HS256"));

...
```
```
eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiIsImtpZCI6IiJ9.eyJhdWQiOiJodHRwczovL2NsaWVudC5leGFtcGxlLmNvbSIsInN1YiI6Im1vY2tTdWJqZWN0IiwiaXNzIjoiaHR0cHM6Ly9pc3N1ZXIuZXhhbXBsZS5jb20iLCJpYXQiOjE1MzQ5NTc2Mjd9.k-3sS2TYxHwmmKfi3HI80IEDe8MadJDjWJIFc_MJVXc

```

## Verifying the message content

A protocol specification would not be anything if it didn’t specify what a message is supposed to look like. Which attributes that can occur in a message and what type of values the attributes could have. And in some extreme case the specification can also specify the exact values that a specific attribute can have.

The OAuth2 and OpenID Connect specifications does all that. But both of them also states that extra attributes can always occur and should be allowed.

All messages extending org.oidc.msg.AbstractMessage class can deal with this. Let’s make a basic error response message as an example. This message is defined as follows:

```java
import org.oidc.msg.AbstractMessage;
import org.oidc.msg.ParameterVerification;

public class ErrorMessage extends AbstractMessage {

  { // Set parameter requirements for message.
    paramVerDefs.put("error", ParameterVerification.SINGLE_REQUIRED_STRING.getValue());
    paramVerDefs.put("error_description", ParameterVerification.SINGLE_OPTIONAL_STRING.getValue());
    paramVerDefs.put("error_uri", ParameterVerification.SINGLE_OPTIONAL_STRING.getValue());
  }

...

```

What this means is that *error* must have a _java.lang.String_ value and that *error_description* and *error_uri* may have values and if so single _java.lang.String_ values.

The following values for _org.oidc.msg.ParameterVerification_ are provided by the library off the shelf:

* *SINGLE_(OPTIONAL or REQUIRED)_STRING*: Value as _java.lang.String_.

* *SINGLE_(OPTIONAL or REQUIRED)_INT*: Value as _java.lang.Long_ or _java.lang.Integer_ or numeric _java.lang.String_ which are converted into _java.lang.Long_.

* *SINGLE_(OPTIONAL or REQUIRED)_BOOLEAN*: Value as _java.lang.Boolean_ or _java.lang.String_ containing _true_ or _false_, which are converted into _java.lang.Boolean_.

* *SINGLE_(OPTIONAL or REQUIRED)_DATE*: Value as _java.util.Date_ or _int_, _long_, _java.lang.Integer_ or _java_lang.Long_ containing epoch seconds, which are converted into _java.util.Date_.

* *SINGLE_(OPTIONAL or REQUIRED)_MAP*: Value as _java.util.Map_ with _java.lang.String_ as key format.

* *(OPTIONAL or REQUIRED)_LIST_OF_STRINGS*: Value as _java.util.List_ with _java.lang.String_ format, or single non-empty _java.lang.String_ which are converted into _java.util.List_.

* *(OPTIONAL or REQUIRED)_LIST_OF_SP_SEP_STRINGS*: Value as space-separated _java.lang.String_ or in non-empty array of _java.lang.String_s which are converted into space-separated _java.lang.String_.

* *SINGLE_(OPTIONAL or REQUIRED)_MESSAGE*: Value as any class implementing _org.oidc.msg.Message_ interface. The message is not verified.

* *SINGLE_(OPTIONAL or REQUIRED)_JWT*: Value as _java.lang.String_ that can be decoded into _com.auth0.JWT_. The JWT is not otherwise verified.

The messages can be verified using the _verify()_ method, see below:

```java

...

	ErrorMessage message = new ErrorMessage();
	message.addClaim("error", "invalid_request");
	System.out.println(message.verify());

...
```
```
true
```

As the only required attribute (*error*) is correctly defined the _verify()_ method will evaluate to _true_. If we forget to provide the error attribute, the method will evaluate to _false_ and the details for error can be contained via _getError()_ method:

```java

...

	ErrorMessage message = new ErrorMessage();
	message.addClaim("error_description", "Some strange error");
	if (!message.verify()) {
		System.out.println(message.getError().getDetails());
	}

...
```
```
[parameterName=error, errorType=MISSING_REQUIRED_VALUE, errorMessage=null, errorCause=null]
```

The _Error_ class contains a list of _ErrorDetails_, containing details for the incorrect parameter/attribute name and the error type. Optionally also the error message and the cause _Throwable_ may be included in the details.

In addition to the desired value format of the parameters, the allowed values can set in the following way:

```java
import java.util.Arrays;
import org.oidc.msg.AbstractMessage;
import org.oidc.msg.ParameterVerification;

public class ErrorMessage extends AbstractMessage {

  { // Set parameter requirements for message.
    paramVerDefs.put("error", ParameterVerification.SINGLE_REQUIRED_STRING.getValue());
    paramVerDefs.put("error_description", ParameterVerification.SINGLE_OPTIONAL_STRING.getValue());
    paramVerDefs.put("error_uri", ParameterVerification.SINGLE_OPTIONAL_STRING.getValue());
    allowedValues.put("error", Arrays.asList("invalid_request", "unauthorized_client"));
  }

...

```

This way only the two values *invalid_request* or *unauthorized_client* are allowed for the *error* claim. See:

```java

...

    ErrorMessage message = new ErrorMessage();
    message.addClaim("error", "invalid_error");
    if (!message.verify()) {
      System.out.println(message.getError().getDetails());
    }

...
```
```
[parameterName=error, errorType=VALUE_NOT_ALLOWED, errorMessage=null, errorCause=null]
```

repository: GJWT/javaOIDCMessage

repo_name: GJWT/javaOIDCMessage


text:
## 2sxc Patches

This folder contains small solutions which patch a specific issue.

As of now, there is this

## DisablePagePublishing

Folder `ToSic.Sxc.Patch.DisablePagePublishing`

This is for Dnn and should disable PagePublishing completely, so if you use Evoq and explicitly don't want page publishing, this should do it for you

2022-05-17 Was removed, as it's now a built-in feature of 2sxc


text:
# Delphinella deviata (Petr.) E. Müll., 1962 SPECIES

#### Status
SYNONYM

#### According to
The Catalogue of Life, 3rd January 2011

#### Published in
Beitr. Kryptfl. Schweiz 11(2): 28 (1962)

#### Original name
Rehmiellopsis deviata Petr., 1954

### Remarks
null

path: /life/Fungi/Ascomycota/Dothideomycetes/Dothideales/Rehmiellopsis/Rehmiellopsis deviata/ Syn. Delphinella deviata/README.md