text:
***
# C Language Interview Questions and Answer
***

***
### This interview questions for C language is in it's infantile stage and any contribution is welcome!

:school::blue_book::book:Do not expect advanced content here since I am doing this while I am learning it!!!

***
## 1. What does `#include<stdio.h>` represent in c lan?

Answer: It is a statment which tells the compiler to insert the contents of `stdio(standard input out put)` at the particular place. This is a pre-processor directive. It is not part of our program, it is an instruction to the compiler to make it do something.
It is the pre-processor that is part of the compiler which actually gets your program from the file.
It tells the compiler to inlcude the contents of a file, in this case the system file `stdio.h`.

***
## 2. `< >` means in `<stdio.h>`?

Answer: The compiler knows it's a system file and therefor must be looked for in a special place, by the fact that the name is enclosed in `< >`.

***
## 3. `stdio` means?

Answer: It stands for standard input output because

 :white_check_mark:`printf()` is a Standard Output function.

 :white_check_mark:`scanf()` is a Standard Input function.
       In short, if we want to use `printf()` in a programme then , we need to include `stdio` header file.
***
## 4. If I want to use `getch()`, `clrscr()` etc.. what do I need to include in the header file?

Answer: We need to include `conio` in a header file and similarly if we are using square root function `sqrt()` we need to include `math` in a header file.

***
## 5. Write a function in C language to generate a prime numbers below 100?

Answer:

```

#include <stdio.h>
#include <stdlib.h>

main(){
  int this_number, divisor, not_prime;

  this_number = 3;

  while(this_number < 100){
    divisor = this_number / 2;
    not_prime = 0;
    while(divisor > 1) {
      if(this_number % divisor == 0) {
              not_prime = 1;
              divisor = 0;
      }
      else
              divisor = divisor-1;
    }

    if(not_prime == 0)
            printf("%d is a prime number\n", this_number);
            this_number = this_number + 1;
  }
  exit(EXIT_SUCCESS);
}
```

```
Answer:
3 is a prime number
5 is a prime number
7 is a prime number
11 is a prime number
13 is a prime number
17 is a prime number
19 is a prime number
23 is a prime number
29 is a prime number
31 is a prime number
37 is a prime number
41 is a prime number
43 is a prime number
47 is a prime number
53 is a prime number
59 is a prime number
61 is a prime number
67 is a prime number
71 is a prime number
73 is a prime number
79 is a prime number
83 is a prime number
89 is a prime number
97 is a prime number
```
***
## 6.  write a program that prints prime pairs — a pair of prime numbers that differ by 2, for example 11 and 13, 29 and 31?

Answer:
```
#include <stdio.h>
#include <stdlib.h>

main(){
   int this_number, divisor, not_prime;
   int last_prime;

   this_number = 3;
   last_prime = 3;

   printf("1, 3 is a prime pair\n");

   while(this_number < 100){
      divisor = this_number / 2;
      not_prime = 0;
      while(divisor > 1){
         if(this_number % divisor == 0){
            not_prime = 1;
            divisor = 0;
         }
         else
            divisor = divisor-1;
      }

      if(not_prime == 0){
         if(this_number == last_prime+2)
            printf("%d, %d is a prime pair\n",
               last_prime, this_number);
         last_prime = this_number;
      }
      this_number = this_number + 1;
   }
   exit(EXIT_SUCCESS);
}
```
```
1, 3 is a prime pair
3, 5 is a prime pair
5, 7 is a prime pair
11, 13 is a prime pair
17, 19 is a prime pair
29, 31 is a prime pair
41, 43 is a prime pair
59, 61 is a prime pair
71, 73 is a prime pair

 ```
***
## 7. How to add comment in C language?

Answer: We can add comment by using /*..........*/ in C language.

***
## 8. Write variable naming rules?

Answer:
- name can be any combination of upper and lower case letters(a-z, A-Z), digits(0-9), and the character _ No other characters can be used in a variable name.
- name must start with a letter
- blanks are not allowed
- Upper and lower case are allowed e.g. NUMBER , Number, number, nuMBER are all different.
- should be descriptive (name need to describe the the information that the variable holds)
- no restriction on the length of variables but make it short and precise
- names cannot be reserved words e.g float, this,...

          acceptable e.g. a, b, c, C, SUM, sum, Count, value, Number, x_dot, Salary, Value1, dhgfhL
          not acceptable e.g. 1ab
                                             inte rest
                                             Ca$h
                                             Amount-of-loan (- not allowed)
                                             int (reserved word)
***
## 9. OR is a binary operator and is denoted bu the symbol ||, which is two adjacent pipe symbols. What does `(x || y)` mean?

Answer: The possible output for `(x || Y)` is gonna be true or y is true or both are true.

***
## 10. Why is termination an important characteristic of an algorithm?

Answer:

If we started following an algorithm that did not terminate, we would never finish executing it!

***
## 11. Why is clarity an important characteristic of an algorithm?

Answer:

While executing a step, we should know exactly what must be done. If we did not, then there would be no single specific outcome for a particular step. Another good reason is that algorithms are usually translated into computer programs, and computer programs do not leave room for ambiguity.
***
## 12. Give one example of a variable of each of the following data types:

integers
floating numbers
characters
Booleans
Answer:
These answers are representative of each of the data types.

integers: number of windows in a room, number of words in a memory, or the rounded-off value of the temperature (negative numbers are integers too), and so on
floating numbers: the cost of an item in a store, the precise temperature, and so on
characters: the four directions specified by 'N', 'S', 'E', or 'W', one's letter grade in a class, or gender ('F' or 'M')
Booleans: the answer to the questions, "Are you female?" or "Do you wish to contribute to the XYZ fund?"

***
## 13. Evaluate the results of the following expressions, given the following values for these variables:

      x = true, y = true, z = false

      x && y || z
      !x && y || z
  ```
  Answer:
  a. true. This expression is interpreted as
(x && y) || z

(true && true) || false

(true) || false

true
```
```
b. false. This expression is interpreted as
((!x) && y) || z

((!true) && true) || false

(false && true) || false

false || false

false
```
***
## 14. Evaluate the results of the following expressions, given the following initial values:
```
     x = 23, y = –10, z = 12

A. x % z
B. x + y*z
C. x/y*z
D. z % z
```
Answer:
```
A. 11

x % z
23 % 12
23/12 = 1 with a remainder of 11
```
```
B. –97

The expression is interpreted as

x + (y * z)
23 + (–10 x 12)
23 + (–120)
–97
```
C. –27.6

x / y * z
23/–10 x 12       (remember that / and * are left associative)
–2.3 x 12
–27.6
```
D. 0
z % z
12 % 12
12/12 = 1 with a remainder of 0
```
***
## 15. Starting with the following initial values, specify the value of each variable at the end of each step, in the following pseudocode.
```
x = 10, y = 20, z = 30
Set x = x + 20
Set y = y * x
Set y = y % z + x
Set z = z – 20
Set z = z ^ 3 ^ 2
```
	Answer:

 ![answer](https://user-images.githubusercontent.com/23619819/29866063-395e19ac-8d45-11e7-912b-59312339a18b.JPG)

***
## 16. Determine the total number of bits in a memory whose size is specified as 100MB X 32.

Answer

Remember that "B" stands for "byte" (8 bits). So,

100 MB = 100 * 220 * 8 bits
              = 100 * 1,048,576 * 8 bits

Thus the 100 MB X 32 memory will contain 100 * 1,048,576 * 8 * 32 or 26,843,545,600 bits.
***
## 17. When a variable has just been declared, what initial value does it contain?

Answer:

No proper initial value exists. Using an uninitialized variable will invariably lead to run-time errors.
***
## 18. What is the difference between: (a) x == y and (b) x = y?

Answer:

The first, x == y, is a Boolean expression whose answer is always either true or false, whereas the second, x = y, is an assignment statement.
***
## 19. What is the difference between an expression and a statement?

Answer:

A statement is the basic unit of execution in a program.

Expressions are usually parts of statements. An expression is something that evaluates to a single valu

	int num1, num2, sum;
	sum = num1 + num2;

	printf("\nEnter two number : ");

	scanf("%d %d", num1,num2);

	sum = num1 + num2;
	printf("Sum : " sum);

	return(o)

}

***
## 21. Write a C program to find area and circumference of a circle?

Answer:
```
#include<stdio.h>

int main() {

	int rad;
	float PI = 3.14, area, ci;

	printf("\nEnter your radius : ");
	scanf("%d", &rad);

	area = PI * rad * rad;
	printf("\nArea of the circle is : %f ", area);

	ci = 2 * PI * rad;
	printf("\nCircumference : %f ", ci);
	return 0;
}
```

***
## 22. Create a program that can add up the number of coins(penny, nickle, dime, quarter);
Answer:

 #include<stdio.h>
   int main() {
    /*variable defination*/
    int penny, nickle, dime, quarter;
    float coinTotal;
    /*prompt for input*/
    printf("\nEnter the number of penny : ");
    scanf("%d", &penny);
    printf("\nEnter the number of nickle you have : ");
    scanf("%d", &nickle);
    printf("\nEnter the number of dime you have : ");
    scanf("%d", &dime);
    printf("\nEnter the number of quarter you have : ");
    scanf("%d", &quarter);
    /*formula to add coin*/
    coinTotal = (penny * 0.01) + (nickle * 0.50) + (dime * 0.10) + (quarter * 0.25);
    /*print out the total*/
    printf("\nThe total coint you entered is : %f", coinTotal);
    return 0;
  }

## 22. Calculate the perimeter of the triangle? And explain your program in detail?

Answer:
I have written, the C code for calculating the perimeter of the triangle as follow. I have used float point to inter the sides of the triangle and the base. The perimeter will be a float number.

![image](https://user-images.githubusercontent.com/23619819/30174977-ea483280-93ca-11e7-821e-3c077929d1a7.png)

***
## 23. What is this line of code doing? scanf(“%f”, &height);

Answer:The scanf get value from stdin and put in variables named. This line of code is where we can input the height from the user. The letter f stands for inputting a float number and if we want to input integers we can simply change it to %d.

***
## 23. Write a program to calculate the gross salary of a person?

Answer:
```
#include<stdio.h>
int main() {
	int gross_salary, basic, da, ta;

	printf("Enter basic salary : ");
	scanf("%d", &basic);

	da = (10 * basic) / 100;
	ta = (12 * basic) /100;

	gross_salary = basic + da + ta;

	printf("\nGross salary : %d", gross_salary);
	return 0;
}
```
***
## 24. Using C program add two numbers, namely num1 and num2 to print out the result?
Answer:

<img width="523" alt="screen shot 2017-09-10 at 8 34 26 pm" src="https://user-images.githubusercontent.com/23619819/3
***
## Create a C program to Enter a number to see if it is an even or odd number?
Answer:
```
#include <stdio.h>
int main () {
        int num;
        printf("\nEnter a number to see if it is even or odd number? : ");

        scanf("%d", &num);

        if(num %2 == 0)
          printf("%d is an even number.", num);

       else printf("%d is an odd number.", num);

        return (0);
}
```
***
## 25. Write a C code to add 10 numbers and if the vlaue greater than 100 say it's greater than 100.

Answer:
```
/*The following is the C Code that will compile in execute in the online compilers.*/
/* C code
 This program will calculate the sum of 10 integers.
 Developer: Mohammed Kemal
 Date: Sep 14, 2017 */
#include <stdio.h>
int main () {
    /* variable definition: */
      int value1,value2,value3,value4,value5,value6, value7,value8, value9,value10, sum;
      /* Initialize sum */
      sum = 0;
      printf("Enter an Integer for value1\n");
      scanf("%d", &value1);
      printf("Enter an Integer for value2\n");
      scanf("%d", &value2);
      printf("Enter an Integer for value3\n");
      scanf("%d", &value3);
      printf("Enter an Integer for value4\n");
      scanf("%d", &value4);
      printf("Enter an Integer for value5\n");
      scanf("%d", &value5);
      printf("Enter an Integer for value6\n");
      scanf("%d", &value6);
      printf("Enter an Integer for value7\n");
      scanf("%d", &value7);
      printf("Enter an Integer for value8\n");
      scanf("%d", &value8);
      printf("Enter an Integer for value9\n");
      scanf("%d", &value9);
      printf("Enter an Integer for value10\n");
      scanf("%d", &value10);
      sum = value1 + value2 + value3 + value4 + value5 + value6 + value7 + value8 + value9 + value10;
      printf("Sum is %d\n " , sum );

      if (sum >100)
            printf("Sum is over 100\n");
  return 0;
}

```
***
## 26. Create a program to determin wheter you can drive or not by entering your age??

Solution:
```
// C code
// This program will ask your age and determin to drive nor not.
// Developer: Mohammed Kemal
// Date: Sep 24, 2017
#include <stdio.h>
int main(){
        //declaring variable
        int age;
        //prompt the user to enter age
        printf("\nEnter your age to determin whether you can drive or not?");
        while (scanf("%d", &age) !=EOF) {
        // when the age below the cut point let them know they are to Young
          if( age  < 16 && age > 0)
          {
            printf("\nToo Young To Drive Car!");
        // Otherwise let them know too old to drive or too young
          }
          else if( age > 80)
          {
            printf("\nToo old to drive car!");
          }
          else if (age < 0 )
          {
            printf("\nYou need to enter positive number!");
          }
          else
          {
            printf("\nYou can drive!");
          }
            printf("Enter another age, or CTRL Z to exit.\n\n");
      }
    return 0;
}
```


text:
# paper-select-tool-rectangle-example

A [Paper.js](http://paperjs.org/) based selection tool example using the rectangle tool.

Usage
-----

To run the example:

```bash
npm install
npm run build
npm start
```

license: MIT

repository: lsst-epo/paper-select-tool

branch_name: refs/heads/master

extension: md

gha_language: JavaScript

gha_license_id: MIT

license_type: permissive

repo_name: lsst-epo/paper-select-tool


text:
---
hrs_structure:
  division: '1'
  volume: '1'
  title: '2'
  chapter: '11'
  section: 11-15.2
type: hrs_section
tags:
  - Government
menu:
  hrs:
    identifier: HRS_0011-0015_0002
    parent: HRS0011
    name: 11-15.2 Late registration
weight: 20120
title: Late registration
full_title: 11-15.2 Late registration
---
**[§11-15.2]** **Late registration.** _[Section effective January 1, 2018.]_ (a) Notwithstanding the closing of the general county register pursuant to section 11-24, a person who is eligible to vote but is not registered to vote may register by appearing in person:

(1) Prior to the day of the election, at any absentee polling place established pursuant to section 15-7 in the county associated with the person's residence; or

(2) On the day of the election, at the polling place in the precinct associated with the person's residence.

(b) The county clerk shall designate a registration clerk, who may be an election official, at each of the absentee polling places in the county established pursuant to section 15-7, prior to the day of the election and at each of the polling places in the county on the day of the election.

(c) The registration clerk shall process applications for any person not registered to vote who submits a signed affidavit in accordance with section 11-15, which shall include a sworn affirmation:

(1) Of the person's qualification to vote;

(2) Acknowledging that the person has not voted and will not vote at any other polling place for that election and has not cast and will not cast any absentee ballot pursuant to chapter 15 for that election; and

(3) Acknowledging that providing false information may result in a class C felony, punishable by a fine not exceeding $1,000 or imprisonment not exceeding five years, or both.

(d) The registration clerk may accept, as prima facie evidence, the allegation of the person in the application regarding the person's residence in accordance with section 11-15(b), unless the allegation is contested by a qualified voter. The registration clerk may demand that the person furnish substantiating evidence to the other allegations of the person's application in accordance with section 11-15(b).

(e) Registration may be challenged in accordance with section 11-25.

(f) Notwithstanding subsection (a), registration pursuant to this section may also be used by a person who is registered to vote but whose name cannot be found on the precinct list for the polling place associated with the person's residence.

(g) The clerk of each county shall add persons who properly register under this section to the respective general county register. Within thirty days of registration at the polling place, the county clerk shall mail to the person a notice including the person's name, current street address, district and precinct, and date of registration. A notice mailed pursuant to this subsection shall serve as prima facie evidence that the person is a registered voter as of the date of registration. [L 2014, c 166, §1]

repository: SamMade/BlueAndKrabby

repo_name: SamMade/BlueAndKrabby


text:
# Deploy-VbVm
A PowerShell 7+ script which deploys a local Ubuntu VirtualBox virtual machine using a cloud-init autoinstall config file and Packer.

# Getting Started
## Installation
To install, drop the entire Deploy-VbVm folder into one of your PowerShell 7 (or later) module directories. The default PowerShell module paths are listed in the **$Env:PSModulePath** environment variable.

## Requires

* [PowerShell 7+ Core](https://docs.microsoft.com/en-us/powershell/scripting/install/installing-powershell?view=powershell-7)
* [VirtualBox (6.1.12 or higher)](https://www.virtualbox.org/)
* [Packer](https://www.packer.io/)
* [New-Autoinstall](https://github.com/simplenotsimpler/New-Autoinstall)
* [New-PackerVbFile](https://github.com/simplenotsimpler/New-PackerVbFile)
* [Invoke-PackerBuildVbVm](https://github.com/simplenotsimpler/Invoke-PackerBuildVbVm)

Packer and VirtualBox are both installed and in your System PATH.

## Usage

Refer to the comment-based help in the module script for detailed usage information or see [Deploy-VbVm.md](./docs/Deploy-VbVm.md)

# Notes
This has only been tested on PowerShell 7 Core on Windows 10 2004. Your mileage may vary if using this with PowerShell 5.1 or PowerShell 6 (Core) and/or other OSes.

# PowerShell Local DevOps
[New-Autoinstall](https://github.com/simplenotsimpler/New-Autoinstall)

[New-PackerVbFile](https://github.com/simplenotsimpler/New-PackerVbFile)

[Invoke-PackerBuildVbVm](https://github.com/simplenotsimpler/Invoke-PackerBuildVbVm)

[DeployVbVm](https://github.com/simplenotsimpler/Deploy-VbVm)

# License
Deploy-VbVm is [MIT licensed](./LICENSE).

repository: simplenotsimpler/Deploy-VbVm

branch_name: refs/heads/main

repo_name: simplenotsimpler/Deploy-VbVm


text:
## This translated string is the name of a variable. Flip leading `$` and `"` if this should be a quoted substitution.

### Problematic code:

```sh
var="foo"
echo $"var"
```

### Correct code:

```sh
var="foo"
echo "$var"
```

### Rationale:

`$".."` is a localized string, for example, `echo $"Hello $USER"` along with the proper translation files can be used to have the script say "Bonjour, youruser" in French locales.

In this case, ShellCheck found a localized string whose contents is also the name of a variable. This could have happened because the user wanted a far more common quoted substitution, e.g. `"$var"`, but accidentally switched the leading `$` and `"`.

### Exceptions:

If you do want a localized string whose contents is also an active variable, you can [[ignore]] this warning or rename the variable.

### Related resources:

* Help by adding links to BashFAQ, StackOverflow, man pages, POSIX, etc!
[Source](https://github.com/koalaman/shellcheck/wiki/SC2256)

repository: codacy/codacy-shellcheck

gha_language: Scala

gha_license_id: NOASSERTION

repo_name: codacy/codacy-shellcheck


text:
# Instructions to install

* 'python setup.py bdist' (TODO: automate this into tf)
* this will create a whl file
* copy the whl file into the python source code directory (TODO: auto-copy or upload)
* terraform will automatically upload the contents of the folder

Notes:
 * In future iteration, we may create a folder '.terraform/tmp/foobar'

repository: muchemwal/dataops-infra

repo_name: muchemwal/dataops-infra


text:
# ChexNet-Keras
This project is a tool to build CheXNet-like models, written in Keras.

<img width="1350" height="450" src="cam_example.png" alt="CAM example image"/>

## What is [CheXNet](https://arxiv.org/pdf/1711.05225.pdf)?
ChexNet is a deep learning algorithm that can detect and localize 14 kinds of diseases from chest X-ray images. As described in the paper, a 121-layer densely connected convolutional neural network is trained on ChestX-ray14 dataset, which contains 112,120 frontal view X-ray images from 30,805 unique patients. The result is so good that it surpasses the performance of practicing radiologists. If you are new to this project, [Luke Oakden-Rayner's post](https://lukeoakdenrayner.wordpress.com/2017/12/18/the-chestxray14-dataset-problems/) is highly recommended.

## In this project, you can
1. Train/test a **baseline model** by following the quickstart. You can get a model with performance close to the paper.
2. Run class activation mapping to see the localization of your model.
3. Modify `multiply` parameter in `config.ini` or design your own class weighting to see if you can get better performance.
4. Modify `weights.py` to customize your weights in loss function. If you find something useful, feel free to make that an option and fire a PR.
5. Every time you do a new experiment, make sure you modify `output_dir` in `config.ini` otherwise previous training results might be overwritten. For more options check the parameter description in `config.ini`.

## Quickstart
**Note that currently this project can only be executed in Linux and macOS. You might run into some issues in Windows.**
1. Download **all tar files**, **Data_Entry_2017.csv** and **BBox_List_2017.csv** of ChestX-ray14 dataset from [NIH dropbox](https://nihcc.app.box.com/v/ChestXray-NIHCC). Put them under `./data` folder and untar all tar files.
2. Create & source a new virtualenv. Python >= **3.6** is required.
3. Install dependencies by running `pip3 install -r requirements.txt`.
4. Copy sample_config.ini to config.ini, you may customize `batch_size` and training parameters here. Make sure config.ini is configured before you run training or testing
5. Run `python train.py` to train a new model. If you want to run the training using multiple GPUs, just prepend `CUDA_VISIBLE_DEVICES=0,1,...` to restrict the GPU devices. `nvidia-smi` command will be helpful if you don't know which device are available.
6. Run `python test.py` to evaluate your model on the test set.
7. Run `python cam.py` to generate images with class activation mapping overlay and the ground bbox. The ground truth comes from the **BBox_List_2017.csv** file so make sure you have that file in `./data` folder. CAM images will be placed under the output folder.

## Trained model weights
Many people are asking for a trained model, [there you go](https://drive.google.com/open?id=19BllaOvs2x5PLV_vlWMy4i8LapLb2j6b). I use this model to create the CAM example images. The testing mean auroc is about 82.9. Again, before you ask about comparing results with the original paper, think about how to do that in a meaningful way.

## Important notice for CUDA 9 users
If you use >= CUDA 9, make sure you set tensorflow_gpu >= 1.5.

## TODO
1. Frontend

## Acknowledgement
I would like to thank Pranav Rajpurkar (Stanford ML group) and Xinyu Weng (北京大學) for sharing their experiences on this task. Also I would like to thank Felix Yu for providing DenseNet-Keras source code.

## Author
Bruce Chou<EMAIL_ADDRESS>
## License
MIT


text:
# matomo piwik deployment

## Overview

## Summary sheet

| Item | Value |
| -- | :--: |
| Type | CF Application  |
| Depends on | [matomo](https://github.com/orange-cloudfoundry/matomo-cf-service) |
| Uses of | NA |
| Vars files | NA |
| Ops files | NA |

## How to use it

## Tips

## See also

* xx
* yy

## To do

N/A

repository: orange-cloudfoundry/paas-templates

branch_name: refs/heads/manual-drop

gha_language: Shell

repo_name: orange-cloudfoundry/paas-templates


text:
# Integration of payment into checkout process

<!-- START doctoc generated TOC please keep comment here to allow auto update -->
<!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE -->
**Contents**

  - [Glossary](#glossary)
  - [Requirements](#requirements)
- [Deployment](#deployment)
      - [Environment variables to configure the notification module:](#environment-variables-to-configure-the-notification-module)
  - [Deployment using Docker image](#deployment-using-docker-image)
      - [Pull the image](#pull-the-image)
      - [Run the container](#run-the-container)
  - [Deployment using AWS Lambda](#deployment-using-aws-lambda)
      - [Deploying the Lambda Code](#deploying-the-lambda-code)
      - [Deploying the API Gateway](#deploying-the-api-gateway)
- [Configuration](#configuration)
    - [Register the endpoint](#register-the-endpoint)
- [FAQ](#faq)

<!-- END doctoc generated TOC please keep comment here to allow auto update -->

### Glossary
In this process, there are 2 parties involved:

 - **Adyen** - the payment provider which will send notifications
 - **Notification module** - hosted service that receives notifications from Adyen,
processes and stores them on a commercetools platform project.

### Requirements
Node.js version 8 LTS or higher is supported.

## Deployment

##### Environment variables to configure the notification module:
Name | Content | Required | Default value
------------ | ------------- | ------------- | -------------
CTP_PROJECT_KEY | commercetools project key (you can get in the commercetools Merchant Center) | **YES** |
CTP_CLIENT_ID | commercetools client ID (you can get in the commercetools Merchant Center) | **YES** |
CTP_CLIENT_SECRET | commercetools client secret (you can get in the commercetools Merchant Center) | **YES** |
LOG_LEVEL | bunyan log level (`trace`, `debug`, `info`, `warn`, `error`, `fatal`)| NO | `info`
PORT | port on which the application will run | NO | 443
KEEP_ALIVE_TIMEOUT | milliseconds to keep a socket alive after the last response ([Node.js docs](https://nodejs.org/dist/latest-v8.x/docs/api/http.html#http_server_keepalivetimeout)) | NO | Node.js default

Check out the deployment [Best Practices documentation](../../docs/BEST_PRACTICES.md)

### Deployment using Docker image
For easy deployment you can use the [Notification module docker image](https://hub.docker.com/r/commercetools/commercetools-adyen-integration-notification/tags).

##### Pull the image
```
docker pull commercetools/commercetools-adyen-integration-notification:X.X.X
```
(replace X.X.X with a image tag)

##### Run the container

Replace all `XXX` values and execute:
```
docker run -e CTP_PROJECT_KEY=XXX -e CTP_CLIENT_ID=XXX -e CTP_CLIENT_SECRET=XXX ctp-adyen-integration-notification:XXX
```

### Deployment using AWS Lambda

##### Deploying the Lambda Code
For deployment to lambda, zip the notification folder and specify `src/lambda.handler` as the entry point for the function

##### Deploying the API Gateway
In order for Adyen to call the lambda, an API Gateway will need to be created which accepts the notifications from Adyen and invokes the lambda.
API Gateway Documentation can be found [here](https://docs.aws.amazon.com/apigateway/latest/developerguide/welcome.html).

## Configuration

After deployment you have to register the Notification module public URL in the Adyen Customer Area in order to receive notifications.

#### Register the endpoint
 1.  Hover **Account** in the menu and select **Server communication**
![image](https://user-images.githubusercontent.com/9251453/55414133-e5b13100-556a-11e9-89ac-a9ebbf72bfdf.png)
 1. You will see the list of available notifications. Click on **add** button of the
"Standard notification"
 1. In the opened form change the **URL** under the **Transport** section to the one
 which exposes the notification module
 1. Select the **Active** checkbox under the same section
 1. Click on **Save Configuration** button below to complete subscription

Check out the Adyen documentation on how to set up notifications for more information: [Set up notifications](https://docs.adyen.com/developers/development-resources/notifications/set-up-notifications)

## FAQ

Can I remove a subscription I created?

- If you accidentally created a subscription you can edit it and uncheck the **Active** checkbox so Adyen doesn't
send there notifications. Then you can contact the Adyen support and ask them to remove the subscription

Will we lose a notification if it was not processed for some reason?
- Adyen will queue notifications when the notification service was not reachable or it didn't return a success message
  and will try to send it later


text:
Demo FMUs
=========
This is a repository of simple functional mock-up units (FMUs) for testing and
demonstration purposes.

If you don't know what an FMU is, you're probably in the wrong place, but
check out [the FMI page on viproma.no](http://viproma.no/doku.php?id=vpf:fmi)
in any case.

Issues and contributions
------------------------
Please use [GitHub](http://github.com/viproma/demo-fmus) to report issues
and submit pull requests.

Requirements
------------
To build this software, you'll need a C++ compiler with decent C++11
support (VS 2013 or GCC 4.9 will do) as well as [CMake](https://cmake.org)
version 2.8.12 or greater.

In addition, [CPPFMU](https://github.com/viproma/cppfmu) must be pulled in as
a Git submodule, while [fmu-uuid](https://github.com/viproma/fmu-uuid) gets
automatically pulled in and built by the CMake scripts.  Check out their
READMEs for additional dependencies.

Building
--------
To clone the repository and get the CPPFMU submodule, run the following
commands:

    git clone https://github.com/viproma/demo-fmus.git
    cd demo-fmus
    git submodule init
    git submodule update

### Simple build
If you only need to build the FMU contents (without zipping them together to
form the actual FMU) for one platform, you can now use the standard CMake
procedure to do so:

    mkdir build
    cd build
    cmake ..
    cmake --build .

You'll now find the FMU contents under `build/fmu-contents`.  Of course, you
can substitute `build` with a path of your choice; CMake doesn't care.  Just
remember to supply the correct source path in the generation step (third
command).

### Complete build
To simplify the building and packaging of complete FMUs we have created two
scripts:

  * `build-vs.cmd`, a Windows batch script that uses CMake's Visual Studio
    generators. Use this to build FMUs that support both 32- and 64-bit
    Windows platforms.

  * `build-make.sh`, a Bash script that uses CMake's Makefile generator.

Note that one FMU can in principle contain code for several different software
platforms (e.g. Windows, Linux, Mac OS X, etc.), and not just 32- and 64-bit
versions of *one* platform.  However, we don't provide any automated way to
do this; you'll have to manually combine the FMUs yourself.

On Windows, the script is run as follows:

    build-vs <MSVC version> [output directory]

Here, `<MSVC version>` must be replaced with the Visual C++ version, e.g. `12`
for MSVC 12.0 (2013) or `14` for MSVC 14.0 (2015), while `[output directory]`
is an optional path to a directory for the output files.  If not specified,
it will default to `build-vs-output`.  For example:

    build-vs 12 ..\generated-fmus

The procedure for UNIX-like systems is similar, except you don't specify
the compiler version:

    ./build-make.sh [output directory]

Here, the output directory will default to `build-make-output` if you don't
specify it.  Example:

    ./build-make.sh ../generated-fmus

Licence
-------
This software is distributed under the 3-Clause BSD License.
(See accompanying file LICENCE.txt or copy at [GitHub](
https://github.com/viproma/demo-fmus/raw/master/LICENCE.txt).)

repository: viproma/demo-fmus

gha_language: C

repo_name: viproma/demo-fmus


text:
docker-webex
============

Run Cisco WebEx [1] inside docker.

To use it simply clone this repository and run the **webex.sh** script.

This will build the image and execute firefox in the resulting container
ready to go to the WebEx site.

Status
------

* Use xauth and updated Firefox from Vivid
* Audio and various sharing options work.
* Webcam video is limited to view-only. This is a limitation on the
  Linux client.

1. https://www.webex.com/test-meeting.html

repository: blues-man/docker-webex

repo_name: blues-man/docker-webex