First we know everyone now days are on the internet, we shop online, we check our email online, we communicate online, we search online, we socialize online. Almost everything we do are online but we didn't think about the dangers that lurks on the internet. Who will protect us from the dangers? how can we be protected? This is where the network security comes in, It can prevent we from entering dangerous websites, protect our traffic, and protect our data...etc. To understand how we can be protected, we should know what threats there are. There are two types of threats, one is the threats that come in from the network which includes DDoS(Distributed Denial of Service), and network attacks like stack overflow. The other one is threats that came out that is on the network, these includes worms, botnets, network resource thefts...etc.
So we have identified where and how the threats can reach us what's next? Next we start defining ways that protect our network.
Just as the title suggests, a man in the middle is the third person who is not involved in the exchange of data between two parties and
that third person will intercept the data to either get the information, rewrite the data or block the data from being exchanged between the two parties.
Man in the middle is a way to attack the network and it can be done through ARP poisoning which is by flooding the network with many ARP responses
and then tricks the host into exchanging traffic with you instead of the real address. Another one is TCP hijacking, this is done through three ways
of either injecting, deleting or change the packets in the traffic.
However, not all man in the middle are bad. A positive reason to have a man in the middle is HTTP Proxy that intercepts all your http traffic and it
will check for dangerous hosts, look for strange URLS, detect and remove malicious files before the traffic either goes out or comes into you.
Mail Proxy works the same way as HTTP proxy other than it is filtering the mail network. Another one is SSL man in the middle this utilizing
a secure keys, certificates, and encryptions. So it depends on how you use it, man in the middle can be both for bad or for good.
There are two types of reconnaissance meaning the attacker that is performing observation of the network and coming up with a strategy to defeat your network.
"Be liberal in what you accept, and conservative in what you send"
This is a very interesting concept introduced, it wants us to understand that the internet can be filled with many unknown errors either
unintentional or intentionally designed. However, we should design software that can be prepared to handle those errors. The last concept wants us to be
careful of the stuff we send because the other hosts can have bad software that make it prone to exploits so we should have software that for example
encrypts your data before leaving your system.
In conclusion for this week I feel like I have learned more in-depth of what it takes to really secure the network, how the software in the system and the network help protect our traffic. Especially the robustness principle is a very simple line, however, it is a lot to take in and think about and how that have shaped the design of our modern day network security. The lab exercises are very interesting to help me understand more about how to look at the packet data. Overall, this lecture is very informative and really broadens my understanding of what it takes to have a secure network.


{% load static %}
Food Recommend
Good meal
Home
Logout
Recommend you with foods below
{{ sol11 }}
{{ sol12 }}
{{ sol13 }}
and drinks below
{{ sol21 }}
{{ sol22 }}


Real Estate Services - Maryland Yellow Pages - AllPages.com
Real Estate Services, Greenbelt, Maryland (MD) .
http://md.allpages.com/greenbelt/real-estate/real-estate-services/
Treatment for Herniated or Bulging Discs
My HOME APPROVED TITLE COMPANIES INSIDE OF PRINCE ...
Preferred Title & Escrow, Inc. 7701 Greenbelt Road, Suite 513. Greenbelt, MD 20770. Kathi Redford.<PHONE_NUMBER>. P11PTE500<EMAIL_ADDRESS>.
http://www.princegeorgescountymd.gov/myhome/pdf/MYHOMEApprovedTitleCo.pdf?nivel=foldmenu(6)
Senior Software Engineer - Greenbelt, MD, United States - Gamasutra
Autodesk | Greenbelt MD 20770 USA | Full Time | Posted: 11/12/2012 . Job Title and Number: Senior Software Engineer, #12WD11044 Location: . At least 3 years professional experience, game-industry preferred, with experience shipping .
http://jobs.gamasutra.com/jobs/51610-31935/Senior-Software-Engineer-Autodesk-Greenbelt-MD-USA
preferred title greenbelt md Herniated or Bulging Discs
Phlebotomist Jobs, Employment in Greenbelt, MD | Indeed.com
Jobs 1 - 10 of 93 . 93 Phlebotomist Jobs available in Greenbelt, MD on Indeed.com. one search. all jobs. . What: Where: Advanced Job Search. job title, keywords or company, city, state, or zip . Phlebotomy certification preferred. 1 year .
http://www.indeed.com/q-Phlebotomist-l-Greenbelt,-MD-jobs.html
Elizabeth Kidwell | LinkedIn
Processor. Preferred Title & Escrow. March 1998 March 2001 (3 years 1 month) Greenbelt, Maryland. Title Company Processor for Real Estate Settlements.
http://www.linkedin.com/pub/elizabeth-kidwell/36/5b3/410
Official Impairment Listing for Spinal Disorders
Senior Graphics Engineer - Greenbelt, MD, United States - Gamasutra
Autodesk | Greenbelt MD 20770 USA | Full Time | Posted: 12/04/2012 . Job Title and Number: Senior Graphics Engineer, 12WD11084 . At least 4 years professional experience, game-industry preferred, with experience shipping commercial .
http://jobs.gamasutra.com/jobs/51610-32151/Senior-Graphics-Engineer-Autodesk-Greenbelt-MD-USA
- mass marketing solutions inc scottsdale arizonia (narrowing of the spine)
Preferred Title & Escrow - Greenbelt, MD Patch
Preferred Title & Escrow offers refinance advising, real estate settlement, deeds, trust and contracts. Services are available for both individuals and businesses.
http://greenbelt.patch.com/listings/preferred-title-escrowFront Desk Receptionist Jobs, Employment in Greenbelt, MD - Indeed
Jobs 1 - 10 of 61 . 61 Front Desk Receptionist Jobs available in Greenbelt, MD on Indeed.com. one search. all jobs. . job title, keywords or company, city, state, or zip . Previous experience in a client service oriented field preferred.... DTI - 4 .
http://www.indeed.com/q-Front-Desk-Receptionist-l-Greenbelt,-MD-jobs.html
Preferred Title & Escrow in Greenbelt, MD 20770 -<PHONE_NUMBER>
Information on Preferred Title & Escrow in Greenbelt.<PHONE_NUMBER>. Address, phone number, map, driving directions, hours of operation, services, reviews and .
http://yellowpages.washingtonpost.com/preferred+title+and+escrow.9.5002507p.home.html
Pharmacy Technician Jobs, Employment in Greenbelt, MD | Indeed ...
Jobs 1 - 10 of 566 . 566 Pharmacy Technician Jobs available in Greenbelt, MD on . job title, keywords or company, city, state, or zip . One two years working experience as a pharmacy technician in an institutional setting preferred.
http://www.indeed.com/q-Pharmacy-Technician-l-Greenbelt,-MD-jobs.html
Medical-Vocational Allowance for Herniated Disc
Title Companies in Greenbelt, MD - AOL Local Yellow Pages
Find great Title Companies in Greenbelt, MD using AOL Local .
http://yellowpages.aol.com/title-companies/md/greenbelt/
American Bank Jobs, Employment in Greenbelt, MD | Indeed.com
Jobs 1 - 10 of 159 . 159 American Bank Jobs available in Greenbelt, MD on Indeed.com. one search. all jobs. . job title, keywords or company, city, state, or zip . Bachelor's Degree preferred and/or related experience. Strong attention to detail .
http://www.indeed.com/q-American-Bank-l-Greenbelt,-MD-jobs.html
Appealing a Denial of Benefits
Registered Nurse Jobs, Employment in Greenbelt, MD | Indeed.com
Jobs 1 - 10 of 5296 . 5296 Registered Nurse Jobs available in Greenbelt, MD on Indeed.com. one search. all . job title, keywords or company, city, state, or zip .
http://www.indeed.com/q-Registered-Nurse-l-Greenbelt,-MD-jobs.html
Medical Assistant Jobs, Employment in Greenbelt, MD | Indeed.com
Jobs 1 - 10 of 2657 . 2657 Medical Assistant Jobs available in Greenbelt, MD on Indeed.com. one search. all jobs. . job title, keywords or company, city, state, or zip . documentation of graduation from an accredited training program preferred.
http://www.indeed.com/q-Medical-Assistant-l-Greenbelt,-MD-jobs.html


We have services!
- transition world-class e-business
- revolutionize open-source systems
- facilitate vertical deliverables
- engineer world-class solutions
- reinvent revolutionary users
- enable transparent models
- unleash compelling experiences
- engineer interactive users
- target 24/365 solutions


{% extends "base.html" %} {% load djblets_deco i18n %} {% block title %}{% trans "Permission denied." %}{% endblock %} {% block content %} {% box "important" %}
{% if request.user.is_anonymous %} {% blocktrans %} This may be because you're not logged in. Try logging in and viewing the page again. If you're still seeing this, talk to your administrator. {% endblocktrans %} {% else %} {% blocktrans %} This usually means your account hasn't been granted access to this page. If you feel this is in error, talk to your administrator. {% endblocktrans %} {% endif %}
{% endbox %} {% endblock %}


newsboat -i my-feeds.xml- Alternatively, add feeds manually:
echo http://example.com/path/to/feed >> "${HOME}/.newsboat/urls"- Start newsboat and refresh all feeds on startup:
newsboat -r- Execute a space-separated list of commands in non-interactive mode:
newsboat -x reload print-unread ...- See keyboard shortcuts (the most relevant are visible in the status line):
?


Minimalist version
Menu
hide ui
show ui
drops
-
+
drops
Minimalist version
Timer
stop sounds
More sounds
PC Software
Day
Stop
Night
Nature sounds
Sorry, your browser doesn't support WebGL! Check out our minimalist version.
© 2021 Rainbowhunt.
Credits, attributions
|


Pricing
Sign up in less than 30 seconds. Try out our 7 day risk free trial, upgrade at anytime, no questions, no hassle.
Small Business
- Aliquet diam gravida
- Phasellus eu condimentum
- Metus non venenatis turpis
Recommended
Professional
- Donec enim nulla malesuada
- Sed venenatis vel, blandit vel
- Duis ultricies scelerisque


<EMAIL_ADDRESS>Please allow up to 48 hours for a reply
+44 1234 567890
In case of the property requiring emergency attention please contact Jean-Paul on 0756 93847


| Methods |
public
|
getPDO(): PDO
Get the PDO instance.
|
#
|
public
|
setPDO(PDO|null $pdo): $this
Set a PDO instance to the connection.
Set a PDO instance to the connection.
Implemented by
|
#
|
public
|
disconnect(): $this
Disconnect connection.
|
#
|
public
|
setFetchMode(int $mode, string|object|null $class = null): Connection
Set the PDO fetch mode.
|
#
|
public
|
getFetchMode(): array
Get the PDO fetch mode.
|
#
|
public
|
reconnect(): $this
Attempt to reconnect.
|
#
|
public
|
open(string|QueryBuilder $table, string|null $alias = null): QueryBuilder
Open a query to a specified table (short for query->table())
Open a query to a specified table (short for query->table())
Implemented by
|
#
|
public
|
query(): QueryBuilder
Return a new query builder.
Return a new query builder.
Implemented by
|
#
|
public
|
getDispatcher(): QueryDispatcher
Get the query dispatcher.
Get the query dispatcher.
Implemented by
|
#
|


workbox-background-sync. QueuePlugin
Use the instance of this class to push the failed requests into the queue.
Constructor
QueuePlugin
new QueuePlugin()
Example
<caption>When you want the workbox-sw framework to take care of
failed requests.</caption>
let bgQueue = new workbox.backgroundSync.QueuePlugin({
callbacks: {
replayDidSucceed: async(hash, res) => {
self.registration.showNotification('Background sync demo', {
body: 'Product has been purchased.',
icon: '/images/shop-icon-384.png',
});
},
replayDidFail: (hash) => {},
requestWillEnqueue: (reqData) => {},
requestWillDequeue: (reqData) => {},
},
});
const requestWrapper = new workbox.runtimeCaching.RequestWrapper({
plugins: [bgQueue],
});
const route = new workbox.routing.RegExpRoute({
regExp: new RegExp('^https://jsonplaceholder.typicode.com'),
handler: new workbox.runtimeCaching.NetworkOnly({requestWrapper}),
});
const router = new workbox.routing.Router();
router.registerRoute({route});
Methods
fetchDidFail
fetchDidFail(input) returns Promise
Wraps pushIntoQueue
in a callback used by higher level framework. This function pushes a given request into the IndexedDb Queue. NOTE: If you are writting the fetch handler for background sync manually, please ignore this.
Parameter |
|||||
|---|---|---|---|---|---|
|
input |
Object Values in
|
- Returns
-
Promise
Promise which resolves when the request is pushed in the queue.
getResponse
getResponse(id) returns Object
Sets the dbName, which is used to store the queue and requests defaults to bgQueueSyncDB.
Parameter |
|
|---|---|
|
id |
The ID of the request. |
- Inherited from
- module:workbox-background-sync.Queue#getResponse
- Returns
-
Fetched response of the request.
pushIntoQueue
pushIntoQueue(input) returns Promise
This function pushes a given request into the IndexedDb Queue.
Parameter |
|||||
|---|---|---|---|---|---|
|
input |
Values in
|
- Inherited from
- module:workbox-background-sync.Queue#pushIntoQueue
- Returns
-
Promise which resolves when the request is pushed in the queue.
replayRequests
replayRequests() returns Promise
Replays all the requests in the queue, this can be used for custom timing of replaying requests may be in an environment where sync event is not supported.
- Inherited from
- module:workbox-background-sync.Queue#replayRequests
- Returns
-
A listener for when the requests have been replayed.


{{ define "main" }} {{- partial "header.html" . -}}
You are logged in as Ashok and requesting a credit report for:
Alternatively, you can make payment via Demand Draft drawn in favour of 'TransUnion CIBIL Limited'


Fresh WaterRentals
Post to Rent OR Sell
About
Log in / Sign up
street with more than 40 characters
Zip code must have 5 numbers
Home Type: HomeApartmentOther: (specified in description)# of Beds: 1 Beds2 Beds3 Beds4 Beds5 BedsOther: (specified in description)# of Baths: 1 Baths2 Baths3 Baths4 Baths5 BathsOther: (specified in description) I Agree to termsSubmitReset


Given a collection of integers that might contain duplicates, nums, return all possible subsets (the power set).
Note: The solution set must not contain duplicate subsets.
Example:
Input: [1,2,2]
Output:
[
[2],
[1],
[1,2,2],
[2,2],
[1,2],
[]
]
See 78. Subsets. Except:
Only consider each duplicate once, that is, when it is at the first slot.
/**function _subsetsWithDup(nums, start, path, result) { result.push(path.slice()) for (let i = start; i < nums.length; i++) { if(i > start && nums[i] === nums[i-1]) { continue } path.push(nums[i]) _subsetsWithDup(nums, i + 1, path, result) path.pop() } }
Template generated via Leetmark.


 These bars have been used to censor various parts of images. Since the creation of
digital editing software which can apply less obtrusive effects such as pixelization and blurring,
censor bars are usually only used for satire.


 Only. $4 ea
A delcious ham sandwich. $3 ea
A tricolored donut. Just delicious. $3 ea
An avocado sandwich.  Only. $4 ea
A delcious ham sandwich. $3 ea
A tricolored donut. Just delicious. $3 ea
An avocado sandwich. Pure delight. $4 ea
The mother of all donuts and croissants, "the SKronut". $5 ea


|
lwIP
2.1.3
Lightweight IP stack
|
#include "lwip/opt.h"
#include "lwip/icmp6.h"
#include "lwip/prot/icmp6.h"
#include "lwip/ip6.h"
#include "lwip/ip6_addr.h"
#include "lwip/inet_chksum.h"
#include "lwip/pbuf.h"
#include "lwip/netif.h"
#include "lwip/nd6.h"
#include "lwip/mld6.h"
#include "lwip/ip.h"
#include "lwip/stats.h"
#include <string.h>
Functions | |
| void | icmp6_input (struct pbuf *p, struct netif *inp) |
| void | icmp6_dest_unreach (struct pbuf *p, enum icmp6_dur_code c) |
| void | icmp6_packet_too_big (struct pbuf *p, u32_t mtu) |
| void | icmp6_time_exceeded (struct pbuf *p, enum icmp6_te_code c) |
| void | icmp6_time_exceeded_with_addrs (struct pbuf *p, enum icmp6_te_code c, const ip6_addr_t *src_addr, const ip6_addr_t *dest_addr) |
| void | icmp6_param_problem (struct pbuf *p, enum icmp6_pp_code c, const void *pointer) |
IPv6 version of ICMP, as per RFC 4443.
| void icmp6_dest_unreach | ( | struct pbuf * | p, |
| enum icmp6_dur_code | c | ||
| ) |
Send an icmpv6 'destination unreachable' packet.
This function must be used only in direct response to a packet that is being received right now. Otherwise, address zones would be lost.
| p | the input packet for which the 'unreachable' should be sent, p->payload pointing to the IPv6 header |
| c | ICMPv6 code for the unreachable type |
Process an input ICMPv6 message. Called by ip6_input.
Will generate a reply for echo requests. Other messages are forwarded to nd6_input, or mld6_input.
| p | the mld packet, p->payload pointing to the icmpv6 header |
| inp | the netif on which this packet was received |
| void icmp6_packet_too_big | ( | struct pbuf * | p, |
| u32_t | mtu | ||
| ) |
Send an icmpv6 'packet too big' packet.
This function must be used only in direct response to a packet that is being received right now. Otherwise, address zones would be lost.
| p | the input packet for which the 'packet too big' should be sent, p->payload pointing to the IPv6 header |
| mtu | the maximum mtu that we can accept |
| void icmp6_param_problem | ( | struct pbuf * | p, |
| enum icmp6_pp_code | c, | ||
| const void * | pointer | ||
| ) |
Send an icmpv6 'parameter problem' packet.
This function must be used only in direct response to a packet that is being received right now. Otherwise, address zones would be lost and the calculated offset would be wrong (calculated against ip6_current_header()).
| p | the input packet for which the 'param problem' should be sent, p->payload pointing to the IP header |
| c | ICMPv6 code for the param problem type |
| pointer | the pointer to the byte where the parameter is found |
| void icmp6_time_exceeded | ( | struct pbuf * | p, |
| enum icmp6_te_code | c | ||
| ) |
Send an icmpv6 'time exceeded' packet.
This function must be used only in direct response to a packet that is being received right now. Otherwise, address zones would be lost.
| p | the input packet for which the 'time exceeded' should be sent, p->payload pointing to the IPv6 header |
| c | ICMPv6 code for the time exceeded type |
| void icmp6_time_exceeded_with_addrs | ( | struct pbuf * | p, |
| enum icmp6_te_code | c, | ||
| const ip6_addr_t * | src_addr, | ||
| const ip6_addr_t * | dest_addr | ||
| ) |
Send an icmpv6 'time exceeded' packet, with explicit source and destination addresses.
This function may be used to send a response sometime after receiving the packet for which this response is meant. The provided source and destination addresses are used primarily to retain their zone information.
| p | the input packet for which the 'time exceeded' should be sent, p->payload pointing to the IPv6 header |
| c | ICMPv6 code for the time exceeded type |
| src_addr | source address of the original packet, with zone information |
| dest_addr | destination address of the original packet, with zone information |


Do you have any questions? Please do not hesitate to contact us directly. Our team will come back to you within a matter of hours to help you.
<EMAIL_ADDRESS>+1<PHONE_NUMBER>
Cupertino, CA 95014 USA


Atlantis
Slot Attendent
Expires July 30th
Commonwealth Bank
Information Technology Manager
Expires July 23rd
National Insurance Board
Actuary
Expires July 4th


jQuery is free, open source software, licensed under the MIT License. jQuery's syntax is designed to make it easier to navigate a document, select DOM elements, create animations, handle events, and develop Ajax applications.
jQuery is free, open source software, licensed under the MIT License. jQuery's syntax is designed to make it easier to navigate a document, select DOM elements, create animations, handle events, and develop Ajax applications.
jQuery is free, open source software, licensed under the MIT License. jQuery's syntax is designed to make it easier to navigate a document, select DOM elements, create animations, handle events, and develop Ajax applications.


Watch: Dog stuck in 40-feet-deep tank rescued after 8 days
The 45-second video, which has been viewed over 2,000 times, shows a member of the rescue team approaching the nervous stray dog at the base of the tank with the help of a lever-pully.
by Trends DeskA rescue video of a stray dog trapped in a 40-feet-deep dry water purification tank for over eight days has gone viral on social media. The video was shared by Pune-based charitable trust RESQ.
The 45-second video, which has been viewed over 2,000 times, shows a member of the rescue team approaching the nervous stray dog at the base of the tank with the help of a lever-pully.
However, as he approaches the animal, the dog turns restless and can be seen running around to avoid contact. Soon, with the help of a net, the rescuer was able to catch the dog and release it on to safe ground.
Watch the video here:
Once shared online, the video went viral and actor Richa Chadha too re-tweeted the clip, thanking the rescuers for helping the animal.


Admission Date/Time:12-june-2017
First Name: Jasmine Middle Name: Last Name: Walia
Date of birth:02-july-1993
Blood Group:0+
Phone Number:01234567891
Email<EMAIL_ADDRESS>Street No.: 17
Street Name: Johnson
Area/village: Gulshan
Thana:gulshan
District: Dhaka
Ward no: 13
Disease Name and Severity: Typhoid
Special Note: none
Amount Deposited: 7,500


--- title: About ---
Hi, I'm Christian, and I'm big on personal development. Since 2017, I stepped up my reading efforts, setting a goal of 30 books per year. I've yet to hit each year's target, but I've picked up a whole lot.
Two important things that I've learnt from my journey so far in becoming a more diligent reader are: (1) we can't possibly remember everything we read, unless we have an incredible memory; and (2) we have limited time to prioritise and read quality books.
As such, my approach has been to capture the essence of each book and keep bits of information that I resonate most strongly with. To keep track of these nuggets, I intend to record and share them with everyone through this mini blog.
Welcome to BookNuggets.


SPIN Admin/Dashboard Theme with a minimalist design and
innovative Dark UI will let you build an amazing and powerful application with great UI.
Perfectly designed for large scale applications, with detailed step by step documentation.
It is built based on the latest standards and recommendations.
It is powered by Bootstrap framework 3+, which is currently one of the most popular frameworks in the world.
We keep working hard on it, releasing new versions in short production cycles. If you have any questions,
please do not hesitate and just write to us<EMAIL_ADDRESS>This package has 3 different versions. Descriptions of each can be found below:
- HTML/JQuery/JS
-
Available
It is great for programming languages such as PHP, Ruby and others. Also available version Jekyll with Gulp. Jump
↓
- Angular2
-
Soon
Written in TypeScript, with many Components and Directives that will boost your productivity.
- MVC5
-
Soon
An adjusted version for ASP.NET MVC5+. Great for both new and existing Visual Studio Projects.
- React
-
Available
Provides a set of flexible React Components which will add great functionality for your App. Many examples included. Jump →
- Sketch Files
-
Soon
-
- Meteor
-
Soon
-
- Photoshop Files
-
Available
More than 30 views in .psd fully built on layers which will allow you to quickly make
changes / adjustments / features and also build new views.
- SCSS Styles
-
Available
Styling of the app is enhanced by the SCSS language, which makes maintenance clean and painless.
Structure
The application structure consists of two main directories - /src and /serve. /src
provides all the source files, which can be editted at will. /serve contains the built application ready
to deploy on any favourite host.
app/
├── bower.json
├── gulpfile.js
├── package.json
└── src/ Core Pages with Includes
├── index.html Start Page
├── assets/ SCSS / JavaScript / Images etc...
│ ├── images/
│ ├── javascript/
│ ├── scss/
│ ├── stylesheets/
│ └── vendor/
├── apps/ Below are directories with the HTML files
├── docs/
├── forms/
├── graphs/
├── grids/
├── icon/
├── grids/
├── interface/
├── layouts/
├── pages/
├── panels/
├── sidebars/
├── start/
├── tables/
├── versions/
└── widgets/
Main Elements
"SPIN Admin/Dashboard Theme" is a constant and consistent structure for all versions of applications that include:
- Sidebar Menu on the left side of the screen.
- Navbar Part of the menu which is always at the top.
-
Content The main section of the appllication displaying page contents.
-
Sub-Navbar An optional element below the "Navbar" which contains Header and Breadcrumbs.
Footer Credits at the bottom of the page.
General Structure of the whole App
Layout Structure
Page  contains Metadata, CSS files.

<meta http-equiv="content-type" content="text/html; charset=utf-8">

<meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1">
<title>SPIN Admin/Dashboard Theme</title>

...

<link rel="stylesheet" href="assets/vendor/css/lib.min.css">

<link rel="stylesheet" href="assets/stylesheets/bootstrap.css">
<link rel="stylesheet" href="assets/stylesheets/app.css">
<link rel="stylesheet" href="assets/stylesheets/plugins.css">

...

Which is the menu on the left side of the page.

<img class="logo-default"<EMAIL_ADDRESS>alt="Logo" width="53">

Position of Sidebar
Navbar
Part of the menu which is always at the top of the page.

Position of Navbar
Sub-Navbar
Below "Navbar" is a part which includes header and breacrumbs.

Position of Sub-Navbar
Content
The main part of the application where the page contents are displayed.

Position of Content
Credits at the bottom of the page.

Position of Footer
Available Options
SPIN provides few options for changing the layout of your application. Those are:
| Change for
|
Name
|
HTML Modifier Class
|
Example
|
|
Sidebar
|
Default
|
Empty
|
Live
|
|
Sidebar
|
Big Icons
|

|
Live
|
|
Sidebar
|
Slim
|

|
Live
|
|
Sidebar
|
Disabled
|

|
Live
|
|
Navbar
|
Default
|
Empty
|
Live
|
|
Navbar
|
Fixed
|

|
Live
|
|
Navbar
|
Disabled
|

|
Live
|
|
Sub-Navbar
|
Header
|
It should be the first element in the .content component:

Page Title

|
Live
|
|
Sub-Navbar
|
Sub-Navbar
|
It should be the first element in the .content element:

Activity Team

|
Live
|
|
Content
|
Container (Default)
|

|
Live
|
|
Content
|
Container-Fluid
|

|
Live
|
|
Footer
|
Default
|
Empty
|
Live
|
|
Footer
|
Fixed
|

|
Live
|
|
Footer
|
Disabled
|

|
Live
|
|
Custom
|
Boxed-Layout
|
Containers in Navbar and Footer Elements should be static by using the .container class. The Content Container should be set to .container-fluid. Finally .boxed-layout should be added to  element classes.
|
Live
|
|
Custom
|
Container (Static Width)
|
To use this layout you should place standard .containers in Navbar, Footer and Content Elements. In addition the sidebar should be disabled (.sidebar-disabled in  class), the navigation is then handled by the menu in the Navbar.
|
Live
|
You can run the package like any typical Bower/Gulp application. You have 2 main build options available - Development and Distribution, both described below.
Requirements
To run the package you need NodeJs >= 5.x installed on your system. Additionally you need Bower and Gulp packages globally installed, available from your command line.
Installation Linux/OSX
If you have NodeJs, Bower and Gulp already installed, skip to point 4
-
Install NodeJs (>= 5.x) from https://nodejs.org/
-
Install Bower package manager. In the terminal type sudo npm install -g bower hit Enter and enter your administrator password after.
-
Install Gulp build tool. Just like in the point above run sudo npm install -g gulp and approve the installation with the admin password.
-
Extract / Clone the source files to a directory on your target drive.
-
Run the terminal and navigate to the extracted package.
-
Run npm install and wait for the NodeJs packages to be installed.
-
Run bower install and wait for the Bower packages to be installed.
-
Run gulp to start a Development version. Sources can be changed in the /src directory, with auto reload enabled.
Run gulp build to create a Distribution package located in /dist directory.
Installation Windows
Windows installation is almost identical. Just dont type sudo in the command line before installing Bower and Gulp as they will be installed in the current user space.
All style changes, fixes and improvements made for SPIN can be found in the assets/scss/app directory. Customized styles for 3rd party plugins should be in separate plugin directories in assets/scss/plugins folder.
Using Styles
All original SCSS files used in the project, are ready for use and modification.
src/assets/scss/
├── app/ Application styles
│ ├── helpers.scss Various flexible utility classes
│ ├── layout.scss Positioning of the main layout elements
│ ├── sidebars.scss Left and right sidebar styling
│ ├── variables.scss Sizes, colors and other variables used in the app
| └── app.scss Links all the above files
├── bootstrap/ Customized bootstrap
│ ├── mixins.scss Bootstrap modifed mixins
│ ├── variables.scss Adjusted bootstrap variables
| └── bootstrap.scss Actual bootstrap customizations
└── plugins/ Third party plugins styles
└── (...)
Attention! Please keep in mind that the main styles of Bootstrap are overwritten in the bootstrap/mixins.scss and bootstrap/bootstrap.scss. Never change styles in the _bower_components/ folder.
Change Styles
If you want to start changing styles of the application, you should start from the two main .scss files which are listed below:
The core variables are defined in:
- src/sass/app/variables.scss Main App Variables
- src/sass/bootstrap/variables.scss Bootstrap Override Variables
More specific variables can be found in the beginning of each *.scss file.
Adding Plugins
Below are some important information on how and where to add .scss files for plugins:
- The plugins SCSS files should be placed in /src/assets/scss/plugins/plugin-name/plugin-name-file.scss
- The compiled CSS should also be placed in /src/assets/scss/plugins/plugin-name/plugin-name-file.css
- Every plugin style should be linked in the /src/assets/scss/plugins/plugins.scss file (both *.scss and *.css files) i.e. @import './plugin-name/plugin-file';
With the help of these helpers you can create unlimited variations of a lot of new UI in a simple way.
Text
| name
|
where i can use
|
description
|
|
.text-gray-lighter
|
Typography
|
Changes the color of in the text
|
|
.text-gray-light
|
Typography
|
Changes the color of in the text
|
|
.text-gray
|
Typography
|
Changes the color of in the text
|
|
.text-gray-darker
|
Typography
|
Changes the color of in the text
|
|
.text-gray-dark
|
Typography
|
Changes the color of in the text
|
|
.text-muted
|
Typography
|
Changes the color of in the text
|
|
.text-primary
|
Typography
|
Changes the color of in the text
|
|
.text-info
|
Typography
|
Changes the color of in the text
|
|
.text-success
|
Typography
|
Changes the color of in the text
|
|
.text-warning
|
Typography
|
Changes the color of in the text
|
|
.text-danger
|
Typography
|
Changes the color of in the text
|
|
.text-cerulan
|
Typography
|
Changes the color of in the text
|
|
.text-curious-blue
|
Typography
|
Changes the color of in the text
|
|
.text-endaveour
|
Typography
|
Changes the color of in the text
|
|
.text-minsk
|
Typography
|
Changes the color of in the text
|
|
.text-eminence
|
Typography
|
Changes the color of in the text
|
|
.text-violet-eggplant
|
Typography
|
Changes the color of in the text
|
|
.text-mint-green
|
Typography
|
Changes the color of in the text
|
|
.text-aquamarine
|
Typography
|
Changes the color of in the text
|
|
.text-malibu
|
Typography
|
Changes the color of in the text
|
|
.text-dodger-blue
|
Typography
|
Changes the color of in the text
|
|
.text-heliotrope
|
Typography
|
Changes the color of in the text
|
|
.text-perfume
|
Typography
|
Changes the color of in the text
|
Backgrounds
| name
|
where i can use
|
description
|
|
.bg-gray-lighter
|
Background
|
Replaces color in the Background
|
|
.bg-gray-light
|
Background
|
Replaces color in the Background
|
|
.bg-gray
|
Background
|
Replaces color in the Background
|
|
.bg-gray-darker
|
Background
|
Replaces color in the Background
|
|
.bg-gray-dark
|
Background
|
Replaces color in the Background
|
|
.bg-muted
|
Background
|
Replaces color in the Background
|
|
.bg-primary
|
Background
|
Replaces color in the Background
|
|
.bg-info
|
Background
|
Replaces color in the Background
|
|
.bg-success
|
Background
|
Replaces color in the Background
|
|
.bg-warning
|
Background
|
Replaces color in the Background
|
|
.bg-danger
|
Background
|
Replaces color in the Background
|
|
.bg-cerulan
|
Background
|
Replaces color in the Background
|
|
.bg-curious-blue
|
Background
|
Replaces color in the Background
|
|
.bg-endaveour
|
Background
|
Replaces color in the Background
|
|
.bg-minsk
|
Background
|
Replaces color in the Background
|
|
.bg-eminence
|
Background
|
Replaces color in the Background
|
|
.bg-violet-eggplant
|
Background
|
Replaces color in the Background
|
|
.bg-mint-green
|
Background
|
Replaces color in the Background
|
|
.bg-aquamarine
|
Background
|
Replaces color in the Background
|
|
.bg-malibu
|
Background
|
Replaces color in the Background
|
|
.bg-dodger-blue
|
Background
|
Replaces color in the Background
|
|
.bg-heliotrope
|
Background
|
Replaces color in the Background
|
|
.bg-perfume
|
Background
|
Replaces color in the Background
|
Borders Colors All, Top, Right, Bottom & Left
| name
|
where i can use
|
description
|
|
.b-gray-lighter
|
Border (All Sides)
|
Replaced color border on left side
|
|
.b-gray-light
|
Border (All Sides)
|
Replaced color border on left side
|
|
.b-gray
|
Border (All Sides)
|
Replaced color border on left side
|
|
.b-gray-darker
|
Border (All Sides)
|
Replaced color border on left side
|
|
.b-gray-dark
|
Border (All Sides)
|
Replaced color border on left side
|
|
.b-muted
|
Border (All Sides)
|
Replaced color border on left side
|
|
.b-primary
|
Border (All Sides)
|
Replaced color border on left side
|
|
.b-info
|
Border (All Sides)
|
Replaced color border on left side
|
|
.b-success
|
Border (All Sides)
|
Replaced color border on left side
|
|
.b-warning
|
Border (All Sides)
|
Replaced color border on left side
|
|
.b-danger
|
Border (All Sides)
|
Replaced color border on left side
|
|
.b-cerulan
|
Border (All Sides)
|
Replaced color border on left side
|
|
.b-curious-blue
|
Border (All Sides)
|
Replaced color border on left side
|
|
.b-endaveour
|
Border (All Sides)
|
Replaced color border on left side
|
|
.b-minsk
|
Border (All Sides)
|
Replaced color border on left side
|
|
.b-eminence
|
Border (All Sides)
|
Replaced color border on left side
|
|
.b-violet-eggplant
|
Border (All Sides)
|
Replaced color border on left side
|
|
.b-mint-green
|
Border (All Sides)
|
Replaced color border on left side
|
|
.b-aquamarine
|
Border (All Sides)
|
Replaced color border on left side
|
|
.b-malibu
|
Border (All Sides)
|
Replaced color border on left side
|
|
.b-dodger-blue
|
Border (All Sides)
|
Replaced color border on left side
|
|
.b-heliotrope
|
Border (All Sides)
|
Replaced color border on left side
|
|
.b-perfume
|
Border (All Sides)
|
Replaced color border on left side
|
| name
|
where i can use
|
description
|
|
.b-t-gray-lighter
|
Border (Top Side)
|
Replaced color border on top side
|
|
.b-t-gray-light
|
Border (Top Side)
|
Replaced color border on top side
|
|
.b-t-gray
|
Border (Top Side)
|
Replaced color border on top side
|
|
.b-t-gray-darker
|
Border (Top Side)
|
Replaced color border on top side
|
|
.b-t-gray-dark
|
Border (Top Side)
|
Replaced color border on top side
|
|
.b-t-muted
|
Border (Top Side)
|
Replaced color border on top side
|
|
.b-t-primary
|
Border (Top Side)
|
Replaced color border on top side
|
|
.b-t-info
|
Border (Top Side)
|
Replaced color border on top side
|
|
.b-t-success
|
Border (Top Side)
|
Replaced color border on top side
|
|
.b-t-warning
|
Border (Top Side)
|
Replaced color border on top side
|
|
.b-t-danger
|
Border (Top Side)
|
Replaced color border on top side
|
|
.b-t-cerulan
|
Border (Top Side)
|
Replaced color border on top side
|
|
.b-t-curious-blue
|
Border (Top Side)
|
Replaced color border on top side
|
|
.b-t-endaveour
|
Border (Top Side)
|
Replaced color border on top side
|
|
.b-t-minsk
|
Border (Top Side)
|
Replaced color border on top side
|
|
.b-t-eminence
|
Border (Top Side)
|
Replaced color border on top side
|
|
.b-t-violet-eggplant
|
Border (Top Side)
|
Replaced color border on top side
|
|
.b-t-mint-green
|
Border (Top Side)
|
Replaced color border on top side
|
|
.b-t-aquamarine
|
Border (Top Side)
|
Replaced color border on top side
|
|
.b-t-malibu
|
Border (Top Side)
|
Replaced color border on top side
|
|
.b-t-dodger-blue
|
Border (Top Side)
|
Replaced color border on top side
|
|
.b-t-heliotrope
|
Border (Top Side)
|
Replaced color border on top side
|
|
.b-t-perfume
|
Border (Top Side)
|
Replaced color border on top side
|
| name
|
where i can use
|
description
|
|
.b-r-gray-lighter
|
Border (Right Side)
|
Replaced color border on right side
|
|
.b-r-gray-light
|
Border (Right Side)
|
Replaced color border on right side
|
|
.b-r-gray
|
Border (Right Side)
|
Replaced color border on right side
|
|
.b-r-gray-darker
|
Border (Right Side)
|
Replaced color border on right side
|
|
.b-r-gray-dark
|
Border (Right Side)
|
Replaced color border on right side
|
|
.b-r-muted
|
Border (Right Side)
|
Replaced color border on right side
|
|
.b-r-primary
|
Border (Right Side)
|
Replaced color border on right side
|
|
.b-r-info
|
Border (Right Side)
|
Replaced color border on right side
|
|
.b-r-success
|
Border (Right Side)
|
Replaced color border on right side
|
|
.b-r-warning
|
Border (Right Side)
|
Replaced color border on right side
|
|
.b-r-danger
|
Border (Right Side)
|
Replaced color border on right side
|
|
.b-r-cerulan
|
Border (Right Side)
|
Replaced color border on right side
|
|
.b-r-curious-blue
|
Border (Right Side)
|
Replaced color border on right side
|
|
.b-r-endaveour
|
Border (Right Side)
|
Replaced color border on right side
|
|
.b-r-minsk
|
Border (Right Side)
|
Replaced color border on right side
|
|
.b-r-eminence
|
Border (Right Side)
|
Replaced color border on right side
|
|
.b-r-violet-eggplant
|
Border (Right Side)
|
Replaced color border on right side
|
|
.b-r-mint-green
|
Border (Right Side)
|
Replaced color border on right side
|
|
.b-r-aquamarine
|
Border (Right Side)
|
Replaced color border on right side
|
|
.b-r-malibu
|
Border (Right Side)
|
Replaced color border on right side
|
|
.b-r-dodger-blue
|
Border (Right Side)
|
Replaced color border on right side
|
|
.b-r-heliotrope
|
Border (Right Side)
|
Replaced color border on right side
|
|
.b-r-perfume
|
Border (Right Side)
|
Replaced color border on right side
|
| name
|
where i can use
|
description
|
|
.b-b-gray-lighter
|
Border (Bottom Side)
|
Replaced color border on bottom side
|
|
.b-b-gray-light
|
Border (Bottom Side)
|
Replaced color border on bottom side
|
|
.b-b-gray
|
Border (Bottom Side)
|
Replaced color border on bottom side
|
|
.b-b-gray-darker
|
Border (Bottom Side)
|
Replaced color border on bottom side
|
|
.b-b-gray-dark
|
Border (Bottom Side)
|
Replaced color border on bottom side
|
|
.b-b-muted
|
Border (Bottom Side)
|
Replaced color border on bottom side
|
|
.b-b-primary
|
Border (Bottom Side)
|
Replaced color border on bottom side
|
|
.b-b-info
|
Border (Bottom Side)
|
Replaced color border on bottom side
|
|
.b-b-success
|
Border (Bottom Side)
|
Replaced color border on bottom side
|
|
.b-b-warning
|
Border (Bottom Side)
|
Replaced color border on bottom side
|
|
.b-b-danger
|
Border (Bottom Side)
|
Replaced color border on bottom side
|
|
.b-b-cerulan
|
Border (Bottom Side)
|
Replaced color border on bottom side
|
|
.b-b-curious-blue
|
Border (Bottom Side)
|
Replaced color border on bottom side
|
|
.b-b-endaveour
|
Border (Bottom Side)
|
Replaced color border on bottom side
|
|
.b-b-minsk
|
Border (Bottom Side)
|
Replaced color border on bottom side
|
|
.b-b-eminence
|
Border (Bottom Side)
|
Replaced color border on bottom side
|
|
.b-b-violet-eggplant
|
Border (Bottom Side)
|
Replaced color border on bottom side
|
|
.b-b-mint-green
|
Border (Bottom Side)
|
Replaced color border on bottom side
|
|
.b-b-aquamarine
|
Border (Bottom Side)
|
Replaced color border on bottom side
|
|
.b-b-malibu
|
Border (Bottom Side)
|
Replaced color border on bottom side
|
|
.b-b-dodger-blue
|
Border (Bottom Side)
|
Replaced color border on bottom side
|
|
.b-b-heliotrope
|
Border (Bottom Side)
|
Replaced color border on bottom side
|
|
.b-b-perfume
|
Border (Bottom Side)
|
Replaced color border on bottom side
|
| name
|
where i can use
|
description
|
|
.b-l-gray-lighter
|
Border (Left Side)
|
Replaced color border on left side
|
|
.b-l-gray-light
|
Border (Left Side)
|
Replaced color border on left side
|
|
.b-l-gray
|
Border (Left Side)
|
Replaced color border on left side
|
|
.b-l-gray-darker
|
Border (Left Side)
|
Replaced color border on left side
|
|
.b-l-gray-dark
|
Border (Left Side)
|
Replaced color border on left side
|
|
.b-l-muted
|
Border (Left Side)
|
Replaced color border on left side
|
|
.b-l-primary
|
Border (Left Side)
|
Replaced color border on left side
|
|
.b-l-info
|
Border (Left Side)
|
Replaced color border on left side
|
|
.b-l-success
|
Border (Left Side)
|
Replaced color border on left side
|
|
.b-l-warning
|
Border (Left Side)
|
Replaced color border on left side
|
|
.b-l-danger
|
Border (Left Side)
|
Replaced color border on left side
|
|
.b-l-cerulan
|
Border (Left Side)
|
Replaced color border on left side
|
|
.b-l-curious-blue
|
Border (Left Side)
|
Replaced color border on left side
|
|
.b-l-endaveour
|
Border (Left Side)
|
Replaced color border on left side
|
|
.b-l-minsk
|
Border (Left Side)
|
Replaced color border on left side
|
|
.b-l-eminence
|
Border (Left Side)
|
Replaced color border on left side
|
|
.b-l-violet-eggplant
|
Border (Left Side)
|
Replaced color border on left side
|
|
.b-l-mint-green
|
Border (Left Side)
|
Replaced color border on left side
|
|
.b-l-aquamarine
|
Border (Left Side)
|
Replaced color border on left side
|
|
.b-l-malibu
|
Border (Left Side)
|
Replaced color border on left side
|
|
.b-l-dodger-blue
|
Border (Left Side)
|
Replaced color border on left side
|
|
.b-l-heliotrope
|
Border (Left Side)
|
Replaced color border on left side
|
|
.b-l-perfume
|
Border (Left Side)
|
Replaced color border on left side
|
Borders Sizes All, Top, Right, Bottom & Left
| name
|
where i can use
|
description
|
|
.b-a-0
|
Border (All Sides)
|
Without a border around the object
|
|
.b-a-1
|
Border (All Sides)
|
With border size 1px around the object.
|
|
.b-a-2
|
Border (All Sides)
|
With border size 2px around the object.
|
|
.b-a-3
|
Border (All Sides)
|
With border size 3px around the object.
|
|
.b-a-4
|
Border (All Sides)
|
With border size 4px around the object.
|
| name
|
where i can use
|
description
|
|
.b-t-0
|
Border (Top Side)
|
Without the border in the Top
|
|
.b-t-1
|
Border (Top Side)
|
With border 1px in the Top
|
|
.b-t-2
|
Border (Top Side)
|
With border 2px in the Top
|
|
.b-t-3
|
Border (Top Side)
|
With border 3px in the Top
|
|
.b-t-4
|
Border (Top Side)
|
With border 4px in the Top
|
| name
|
where i can use
|
description
|
|
.b-r-0
|
Border (Right Side)
|
Without the border in the Right
|
|
.b-r-1
|
Border (Right Side)
|
With border 1px in the Right
|
|
.b-t-2
|
Border (Right Side)
|
With border 2px in the Right
|
|
.b-t-3
|
Border (Right Side)
|
With border 3px in the Right
|
|
.b-r-4
|
Border (Right Side)
|
With border 4px in the Right
|
| name
|
where i can use
|
description
|
|
.b-b-0
|
Border (Bottom Side)
|
Without the border in the Bottom
|
|
.b-b-1
|
Border (Bottom Side)
|
With border 1px in the Bottom
|
|
.b-b-2
|
Border (Bottom Side)
|
With border 2px in the Bottom
|
|
.b-b-3
|
Border (Bottom Side)
|
With border 3px in the Bottom
|
|
.b-b-4
|
Border (Bottom Side)
|
With border 4px in the Bottom
|
| name
|
where i can use
|
description
|
|
.b-l-0
|
Border (Left Side)
|
Without the border in the Left
|
|
.b-l-1
|
Border (Left Side)
|
With border 1px in the Left
|
|
.b-l-2
|
Border (Left Side)
|
With border 2px in the Left
|
|
.b-l-3
|
Border (Left Side)
|
With border 3px in the LEft
|
|
.b-l-4
|
Border (Left Side)
|
With border 4px in the Left
|
Borders Styles
| name
|
where i can use
|
description
|
|
.b-solid
|
All
|
Default style border visible around the whole object
|
|
.b-t-solid
|
Top
|
Default style border visible only on the Top
|
|
.b-r-solid
|
Right Side
|
Default style border visible only on the Right Side
|
|
.b-b-solid
|
Bottom
|
Default style border visible only on the Bottom
|
|
.b-l-solid
|
Left Side
|
Default style border visible only on the Left Side
|
| name
|
where i can use
|
description
|
|
.b-dashed
|
All
|
Dashed style border visible around the whole object
|
|
.b-t-dashed
|
Top
|
Dashed style border visible only on the Top
|
|
.b-r-dashed
|
Right Side
|
Dashed style border visible only on the Right Side
|
|
.b-b-dashed
|
Bottom
|
Dashed style border visible only on the Bottom
|
|
.b-l-dashed
|
Left Side
|
Dashed style border visible only on the Left Side
|
| name
|
where i can use
|
description
|
|
.b-dotted
|
All
|
Dotted style border visible around the whole object
|
|
.b-t-dotted
|
Top
|
Dotted style border visible only on the Top
|
|
.b-r-dotted
|
Right Side
|
Dotted style border visible only on the Right Side
|
|
.b-b-dotted
|
Bottom
|
Dotted style border visible only on the Bottom
|
|
.b-l-dotted
|
Left Side
|
Dotted style border visible only on the Left Side
|
Radius Sizes All Corners, Right-Top, Right-Bottom, Left-Bottom & Left-Top
| name
|
where i can use
|
description
|
|
.b-r-a-0
|
All
|
Without radius on all the edges
|
|
.b-r-a-1
|
All
|
Rounding Radius 1px on all the edges
|
|
.b-r-a-2
|
All
|
Rounding Radius 2px on all the edges
|
|
.b-r-a-3
|
All
|
Rounding Radius 3px on all the edges
|
|
.b-r-a-4
|
All
|
Rounding Radius 4px on all the edges
|
| name
|
where i can use
|
description
|
|
.b-t-r-0
|
All
|
Without Radius on the Top Right Side
|
|
.b-t-r-1
|
All
|
Rounding Radius 1px on the Top Right Side
|
|
.b-t-r-2
|
All
|
Rounding Radius 2px on the Top Right Side
|
|
.b-t-r-3
|
All
|
Rounding Radius 3px on the Top Right Side
|
|
.b-t-r-4
|
All
|
Rounding Radius 4px on the Top Right Side
|
| name
|
where i can use
|
description
|
|
.b-b-r-0
|
All
|
Without Radius on the Bottom Right Side
|
|
.b-b-r-1
|
All
|
Rounding Radius 1px on the Bottom Right Side
|
|
.b-b-r-2
|
All
|
Rounding Radius 2px on the Bottom Right Side
|
|
.b-b-r-3
|
All
|
Rounding Radius 3px on the Bottom Right Side
|
|
.b-b-r-4
|
All
|
Rounding Radius 4px on the Bottom Right Side
|
| name
|
where i can use
|
description
|
|
.b-b-l-0
|
All
|
Without Radius on the Bottom Left Side
|
|
.b-b-l-1
|
All
|
Rounding Radius 1px on the Bottom Left Side
|
|
.b-b-l-2
|
All
|
Rounding Radius 2px on the Bottom Left Side
|
|
.b-b-l-3
|
All
|
Rounding Radius 3px on the Bottom Left Side
|
|
.b-b-l-4
|
All
|
Rounding Radius 4px on the Bottom Left Side
|
| name
|
where i can use
|
description
|
|
.b-t-l-0
|
All
|
Without Radius on the Top Left Side
|
|
.b-t-l-1
|
All
|
Rounding Radius 1px on the Top Left Side
|
|
.b-t-l-2
|
All
|
Rounding Radius 2px on the Top Left Side
|
|
.b-t-l-3
|
All
|
Rounding Radius 3px on the Top Left Side
|
|
.b-t-l-4
|
All
|
Rounding Radius 4px on the Top Left Side
|
Margins
| name
|
where i can use
|
description
|
|
.m-a-0
|
All
|
Without margins
|
|
.m-a-1
|
All
|
1px margin around the object
|
|
.m-a-2
|
All
|
2px margin around the object
|
|
.m-a-1
|
All
|
3px margin around the object
|
|
.m-a-1
|
All
|
4px margin around the object
|
| name
|
where i can use
|
description
|
|
.m-t-0
|
All
|
Without margin on Top side
|
|
.m-t-1
|
All
|
1px margin on Top side
|
|
.m-t-2
|
All
|
2px margin on Top side
|
|
.m-t-3
|
All
|
3px margin on Top side
|
|
.m-t-4
|
All
|
4px margin on Top side
|
| name
|
where i can use
|
description
|
|
.m-r-0
|
All
|
Without margin on right side
|
|
.m-a-1
|
All
|
1px margin on right side
|
|
.m-a-2
|
All
|
2px margin on right side
|
|
.m-a-3
|
All
|
3px margin on right side
|
|
.m-a-4
|
All
|
4px margin on right side
|
| name
|
where i can use
|
description
|
|
.m-b-0
|
All
|
Without margin on bottom side
|
|
.m-b-1
|
All
|
1px margin on bottom side
|
|
.m-b-2
|
All
|
2px margin on bottom side
|
|
.m-b-3
|
All
|
3px margin on bottom side
|
|
.m-b-4
|
All
|
4px margin on bottom side
|
| name
|
where i can use
|
description
|
|
.m-l-0
|
All
|
Without margin on left side
|
|
.m-l-1
|
All
|
1px margin on left side
|
|
.m-l-2
|
All
|
2px margin on left side
|
|
.m-l-3
|
All
|
3px margin on left side
|
|
.m-l-4
|
All
|
4px margin on left side
|
| name
|
where i can use
|
description
|
|
.m-x-0
|
All
|
Without margins on top & bottom sides
|
|
.m-x-1
|
All
|
1px margin on top & bottom sides
|
|
.m-x-2
|
All
|
2px margin on top & bottom sides
|
|
.m-x-3
|
All
|
3px margin on top & bottom sides
|
|
.m-x-4
|
All
|
4px margin on top & bottom sides
|
| name
|
where i can use
|
description
|
|
.m-y-0
|
All
|
Without margins on Left & Right sides
|
|
.m-y-1
|
All
|
1px margin on Left & Right sides
|
|
.m-y-2
|
All
|
2px margin on Left & Right sides
|
|
.m-y-3
|
All
|
3px margin on Left & Right sides
|
|
.m-y-4
|
All
|
4px margin on Left & Right sides
|
Paddings
| name
|
where i can use
|
description
|
|
.p-a-0
|
All
|
Without padding inside object
|
|
.p-a-1
|
All
|
1px padding inside object
|
|
.p-a-2
|
All
|
2px padding inside object
|
|
.p-a-3
|
All
|
3px padding inside object
|
|
.p-a-1
|
All
|
4px padding inside object
|
| name
|
where i can use
|
description
|
|
.p-t-0
|
All
|
Without padding on Top side
|
|
.p-t-1
|
All
|
1px padding on Top side
|
|
.p-t-2
|
All
|
2px padding on Top side
|
|
.p-t-3
|
All
|
3px padding on Top side
|
|
.p-t-4
|
All
|
4px padding on Top side
|
| name
|
where i can use
|
description
|
|
.p-r-0
|
All
|
Without padding on right side
|
|
.p-r-1
|
All
|
1px padding on right side
|
|
.p-r-2
|
All
|
2px padding on right side
|
|
.p-r-3
|
All
|
3px padding on right side
|
|
.p-r-4
|
All
|
4px padding on right side
|
| name
|
where i can use
|
description
|
|
.p-b-0
|
All
|
Without margin on bottom side
|
|
.p-b-1
|
All
|
1px margin on bottom side
|
|
.p-b-2
|
All
|
2px margin on bottom side
|
|
.p-b-3
|
All
|
3px margin on bottom side
|
|
.p-b-4
|
All
|
4px margin on bottom side
|
| name
|
where i can use
|
description
|
|
.p-l-0
|
All
|
Without padding on left side
|
|
.p-l-1
|
All
|
1px padding on left side
|
|
.p-l-2
|
All
|
2px padding on left side
|
|
.p-l-3
|
All
|
3px padding on left side
|
|
.p-l-4
|
All
|
4px padding on left side
|
| name
|
where i can use
|
description
|
|
.p-x-0
|
All
|
Without padding on top & bottom sides
|
|
.p-x-1
|
All
|
1px padding on top & bottom sides
|
|
.p-x-2
|
All
|
2px padding on top & bottom sides
|
|
.p-x-3
|
All
|
3px padding on top & bottom sides
|
|
.p-x-4
|
All
|
4px margin on top & bottom sides
|
| name
|
where i can use
|
description
|
|
.p-y-0
|
All
|
Without padding on Left & Right sides
|
|
.p-y-1
|
All
|
1px padding on Left & Right sides
|
|
.p-y-2
|
All
|
2px padding on Left & Right sides
|
|
.p-y-3
|
All
|
3px padding on Left & Right sides
|
|
.p-y-4
|
All
|
4px padding on Left & Right sides
|
Height & Width
| name
|
where i can use
|
description
|
|
.h-3
|
All
|
Height 3px
|
|
.h-6
|
All
|
Height 6px
|
|
.h-9
|
All
|
Height 9px
|
|
.h-20
|
All
|
Height 20px
|
|
.h-100
|
All
|
Height 100px
|
| name
|
where i can use
|
description
|
where used in theme
|
|
.w-0
|
All
|
Width 0px
|
|
.w-3
|
All
|
Width 3px
|
(Profile Details/Messages)
|
|
.w-5
|
All
|
Width 5px
|
|
|
.w-10
|
All
|
Width 10px
|
(Inbox/Table)
|
|
.w-17
|
All
|
Width 10px
|
(Global/Navbar/Avatar)
|
|
.h-100
|
All
|
Width 100px
|
(Profile Details/Messages)
|
|
.h-210
|
All
|
Width 210px
|
(Profile Details/Messages)
|
|
.h-350
|
All
|
Width 350px
|
(Global/Navbar/Notifications)
|
|
.h-1000
|
All
|
Width 1000px
|
(Profile Details/Chat)
|
Various
| name
|
where i can use
|
description
|
|
.v-a-m
|
Table
|
Vertical Align Middle (Table)
|
|
.media-auto
|
Media Objects
|
Media Auto (Disabled in Bootstrap width 1000px)
|
|
.no-bg
|
All
|
No Background
|
|
.custom-scrollbar
|
Adds Perfect Scrollbar to a fixed height container.
|
Works only on systems other than OS X or Mobile.
|
| name
|
where i can use
|
description
|
|
.scroll-200
|
All
|
200px scroll Vertical
|
|
.scroll-300
|
All
|
300px scroll Vertical
|
|
.scroll-600
|
All
|
600px scroll Vertical
|
|
.scroll-1300
|
All
|
1300px scroll Vertical
|


Select category
Break (2)
Business (4)
DIY (2)
Fashion (2)
Food (4)
gadgets (2)
ipad (2)
Learn (1)
Mega Menu (4)
Mobile (2)
Music (3)
Nature (1)
News (3)
People (3)
Photography (1)
Slider (1)
Sport (6)
Sports (4)
Tech (9)
Technology (5)
Travel (2)
Video (3)
Watch (2)


Doing 100% of something is better than waiting for 100% of everything.
CloudComputing
ProductManagement
SoftwareDevelopment
DigitalEcosystems
ProgramManagement
WebEngineering


IStSOS Data formating using Python
2014-05-10
Use Python with SQLite, istsos data formate and timeseries subsampling (downscaling).
With sqlite to convert a list, for example cur.fetch from database like sqlite,
['2014-04-30T10:25,2797,147', '2014-04-30T10:27,2639,174', '2014-04-30T10:29,2645,158', '2014-04-30T10:31,2676,149']
Use print “\n”.join(b) based on this gives
"2014-04-30T10:25,2797,147 2014-04-30T10:27,2639,174 2014-04-30T10:29,2645,158 2014-04-30T10:31,2676,149"
To remove double quotes from above to write into a.DAT, tried almost two hours then find out that the used method will not do this. The full code is as follows with uncommented lines showing failed attempts. Double # are comments
import csv import sqlite3 as lite #import string #identity = string.maketrans() #import simplejson #import os outfile_path='GVR.DAT' #text_file = open("GVR.DAT", "w") #writer = csv.writer(open(outfile_path, 'w'), quotechar='"',quoting=csv.QUOTE_NONE) ##it gives extra hand for defining the csv output, sticked much in this but not given the results #writer = csv.writer(open(outfile_path, 'w'),dialect='excel') #lineterminator='\n') #headers=['urn:ogc:def:parameter:x-istsos:1.0:time:iso8601','urn:ogc:def:parameter:x-istsos:1.0:cbe:dylos:np05mg','urn:ogc:def:parameter:x-istsos:1.0:cbe:dylos:np25mg'] #text_file.write('urn:ogc:def:parameter:x-istsos:1.0:time:iso8601,urn:ogc:def:parameter:x-istsos:1.0:cbe:dylos:np05mg,urn:ogc:def:parameter:x#-istsos:1.0:cbe:dylos:np25mg') #writer.writerow(headers) #text_file.close ##follwoing comments are for accessing sqlite con = lite.connect('GVR.db') cur = con.cursor() cur.execute("SELECT * FROM data") a= [str(i[1]) for i in cur.fetchall()] ##without maping it produce file with alternative line kept empty b = map(str.strip,a) #c= str(b).strip("[']") #e= [str(i) for i in b] #d="\n".join(b) #print d #print d #e = map(str.strip,b) #e=d.translate(None, '"') #e = d.translate(identity, '",') #e = d[1:-1] #print "[%s]" % (','.join(e)) #f = map(lambda x: x.strip('"'), d) #writer.writerow([d]) #for item in e: # writer.writerow([item,].replace'"') #csvwriter.writerow(JD.split()) #e='map' #text_file = open("GVR.DAT", "w") #text_file.write(e) #text_file.close #writer = csv.writer(open("GVR.DAT", "wb"), quoting=csv.QUOTE_NONE) #reader = csv.reader(open("GVR.DAT", "rb"), skipinitialspace=True) #writer.writerows(reader) #for val in e: # writer.writerow([val]) #writer.writerow(d) f = open('output.txt', 'w') f.write('urn:ogc:def:parameter:x-istsos:1.0:time:iso8601,urn:ogc:def:parameter:x-istsos:1.0:cbe:dylos:np05mg,urn:ogc:def:parameter:x-istsos:1.0:cbe:dylos:np25mg'+"\n") ##this simple comments alveate two double quote removal for two hours f.write("\n".join(a)) #simplejson.dump(d, f) f.close()
Write CSV method is not at all working, tried to write using file method and worked fine.
Istsos date formate
- The Istsos requires to date and time in this ( 2014-04-30T11:25:00.000000+0530) format; the data from Dylos is cut shorten to reduce size. So to edit the column it has to convert into a data frame in python.
Pandas data frame conversion based on this
col_names=["date","np05","np25"] data = pa.read_csv("GVR.DAT", header=None,skiprows=1, parse_dates="date",names=col_names) Read the DAT file created in the earlier step. data["date"]=pa.to_datetime(data["date"]) data["date"] = data['date'].apply(lambda x: x.strftime("%Y-%m-%dT%H:%M:%S.000000+0530")) calling specific date column, then converting into desired date formate.
Time scaling
Based on this and this has to reindex the dataframe into datetimeindex as follows
data2 = data.set_index(pa.DatetimeIndex(data['urn:ogc:def:parameter:x-istsos:1.0:time:iso8601']))
then using this index to resample data frame for every fifteen minutes last data, the default resampling is ‘mean.’
data3=data2.resample('15Min', how='last')
Then set the index to the date columns. Otherwise, it writes one extra column into a data file
data4=data3.set_index('urn:ogc:def:parameter:x-istsos:1.0:time:iso8601')
then to make a file out of this data frame
data4.to_csv('GVR1.DAT', sep=',', encoding='utf-8')


If that’s where it all had ended for Charlie Wilson—standing tall at the CIA’s Langley headquarters that day with the fear of nuclear war fast receding and America now the world’s only superpower—then it truly would have been a Cold War fairy tale come true. (Crile, 2003)
Wilson visited Moscow to try to end the surrogate war and rebuild Afghanistan. To his relief, the soon to be Minister of Foreign Affairs Andrei Kozyrev told Wilson that the United States and Russia had a common interest in stabilizing Afghanistan and preventing radical Islamic elements from taking power (a dormant movement triggered by the war and the mujahideen’s victories). Moreover, the Soviets had their own preoccupation: a mujahideen leader named Gulbuddin Hekmatyar. Kozyrev assured him that Gulbuddin’s brand of militant Islam was as dangerous to America as it was to the Soviet Union.
While the negotiations took place, the Afghans continued to bicker and disgrace themselves by massacring prisoners. They could not defeat the Soviet-backed Najibullah regime. Thus, rebuilding could not begin.
Good News or Bad News?
A turning point of the war came on April 1, 1991, when the freedom fighters “liberated” their first major Afghan city: Khost. In response, Wilson’s assistant Charlie Schnabel visited the mujahideen to take note of how the mujahideen were conducting themselves as they began to reclaim their country. He was shocked by the stories he heard from the Pakistani locals. The mujahideen were hijacking U.S. aid trucks and looting stores. They had burned a healthcare facility to the ground because they were convinced it was promoting free sex for women. Female Afghan teachers and nurses were being threatened with violence almost every day. Moreover, the inhabitants of the newly liberated Khost consisted only of mujahideen soldiers, many of whom were radical Arabs who had come to join the jihad. The original inhabitants of Khost had all fled the liberators.
The mujahideen freedom fighters were a disgrace to the Western policies that Wilson had hoped they would emulate, and there was a mounting concern about the Afghan mujahedeen, especially their tendencies toward brutality, heroin trafficking and fundamentalist religious practices.
It is important to note that it was amid the anarchy of Afghanistan that the Taliban was established. Locals turned to a mullah named Mohammed Omar and his religious students responded to calls from victims of lawlessness. Thus, the ranks of the Taliban grew with society’s desperate desire for order. (Tanner)
Inertia, Not Momentum
With the end of the Cold War in 1991, the only reason why the CIA and KGB were continuing to fund this war of the tribes was inertia. In other words, neither side wanted to be the first to pull back.
Many, such as Robert B. Oakley, then the Ambassador to the Democratic Republic of Congo, began to wonder if the U.S.-backed Afghans, no longer menaced by the Red Army, were any different from the Afghans whom the Russians were backing. In fact, it was the leaders of the Afghan puppet government who were saying the right things.
The mujahideen, on the other hand, were committing unspeakable atrocities and couldn’t even put aside their bickering and murderous thoughts long enough to capture Kabul...Without the Russians around, did we really want to be giving long-range Stingers, satellite-guided mortars, burst transmitters, and hundreds of millions of dollars' worth of ordnance to these men? (Crile, 2003)
Blowback.
What no one anticipated was that it might be dangerous to awaken the dormant visions of Islam. There were many warnings before Wilson’s award at Langley. In January 1993, a young Pakistani named Mir Aimal Kasi walked to the gates of the CIA and murdered two officers before escaping to Pakistani. He was embraced as a folk hero. One month later, the World Trade Center car park was bombed. There clearly existed the belief in veterans of the Afghan campaign that America was their enemy.
Instead of caring for his beloved mujahideen, Wilson came to almost ignore these issues. He began to drink more, refused to meet with the mujahideen when they came to Washington, and skipped special briefings that the CIA put on for him. He blindly continued to fund the fighters that were slowly becoming the United States’ new foe. (Crile, 2003)
“The presumption at Langley had been that when the United States packed its bags and cut off the Afghans, the jihad would simply burn itself out...Perhaps that policy would have worked out had it been only weapons that we left behind.” (Crile, 2003)
The more dangerous legacy of the Afghan war was in the minds of Muslims around the world.
“To them the miracle victory over the Soviets was all the work of Allah&emdash;not the billions of dollars that America and Saudi Arabia poured into the battle, not the ten-year commitment of the CIA that turned an army of primitive tribesmen into technoholy warriors” (Crile, 2003)
The consequence of Wilson’s waging a secret war and never advertising its role was the eruption of the spirit of jihad and the belief in surrogate soldiers that, having brought down one superpower, they could just as easily take on another. According to Major Jeremy Kotkin, an Army officer who specialized in Afghanistan and Pakistan, “because Wilson and the CIA could not even begin to conceive of the complexities and nuances of Afghan culture, power bases, and politics, he doomed his own effort to failure.”
Not only was America directly harmed, but Wilson’s gross incompetence in dealing with the aftermath also negatively affected Afghanistan. Following the war, no funding was provided to restructure. Due to this, Afghanistan fell to shambles. By the end of 1993, there were no roads and schools. A power vacuum formed, and the Taliban and Osama bin Laden easily gained power. Their sloppy solution to a new problem (sending 100 million in cruise missiles) did nothing but to strengthen the belief that Allah had protected their new leader.


The client-server model is a distributed application structure that partitions
tasks or workloads between the providers of a resource or service, called servers,
and service requesters, called clients. Often clients and servers communicate
over a computer network on separate hardware, but both client and server may reside
in the same system.
A server host runs one or more server programs which share their resources with clients.
A client does not share any of its resources, but requests a server's content or service
function. Clients therefore initiate communication sessions with servers which await
incoming requests.
Examples of computer applications that use the client-server model are Email, network
printing, and the World Wide Web.
Two processes in client-server model can interact in various ways:
a. Sockets: In this paradigm, the process acting as Server opens a socket using a well-known
(or known by client) port and waits until some client request comes. The second
process acting as a Client also opens a socket but instead of waiting for an
incoming request, the client processes ‘requests first’.
b. RPC: This is a mechanism where one process interacts with another
by means of procedure calls. One process (client) calls the procedure lying on remote
host. The process on remote host is said to be Server. Both processes are allocated
stubs to aid this process.
More information on Sockets can be obtained on selecting Sockets in the
Select the Communication Mode dropdown. As for the RPCs, we have an animation
to demonstrate the working. Select on the RPC options.


A simple lightbox gallery without gallery buttons. Different sizes and very big images will be handled without problems.
MultiDialog can handle different content types.
A group of mixed content types with loop functionality enabled.
MultiDialog has multipel viewport related settings and supports RWD.
Try the demos and resize the window or scroll.
forceFullscreen: Always force the dialog to be maximized. Not ratio aware.
resizeOnWindowResize: Resize the dialog when the window is resized. Useful for repsonsive websites.
scrollWithViewport: Reposition the dialog when the window is scrolled. Useful for repsonsive websites.
resizeAccordingToViewport: Resizes the dialog (ratio aware) to fit the viewport. Makes sure the dialog isn't bigger as the viewport. Very useful for image galleries as its guarantees the best possible image size.
resizeToBestPossibleSize: Resizes the dialog (ratio aware) to fit the viewport. Something like a ratio aware fullscreen mode. This could increase the dialog size.
MultiDialog has a powerful API.
This function...
openGalleryThis function...
openLinkThis function...
openXyzThis function...
next, prev, first, lastThis function...
resizeThis function...
positionThis function...
This example explains how to use the jQuery UI Dialog options.
Open a bigger, resizable, draggable, relative to this tab widget positioned Dialog without an overlay.
Please note you need to add jquery.ui.draggable.js and jquery.ui.resizable.js.
MultiDialog is fully compatible to jQuery UI's CSS Framework - so theming is pretty easy!
Some more examples: GETvar support, fullscreen mode, ...
#1 Some example content with simple HTML. Some example content with simple HTML. Some example content with simple HTML.
Some example content with simple HTML. Some example content with simple HTML. Some example content with simple HTML.
Some example content with simple HTML. Some example content with simple HTML. Some example content with simple HTML.
#2 Some example content with simple HTML. Some example content with simple HTML. Some example content with simple HTML.
Some example content with simple HTML. Some example content with simple HTML. Some example content with simple HTML.
Some example content with simple HTML. Some example content with simple HTML. Some example content with simple HTML.
Some example content with simple HTML. Some example content with simple HTML. Some example content with simple HTML.
Some example content with simple HTML. Some example content with simple HTML. Some example content with simple HTML.
Some example content with simple HTML. Some example content with simple HTML. Some example content with simple HTML.
Some example content with simple HTML. Some example content with simple HTML. Some example content with simple HTML.
Some example content with simple HTML. Some example content with simple HTML. Some example content with simple HTML.
Some example content with simple HTML. Some example content with simple HTML. Some example content with simple HTML.
Some example content with simple HTML. Some example content with simple HTML. Some example content with simple HTML.
Some example content with simple HTML. Some example content with simple HTML. Some example content with simple HTML.
Some example content with simple HTML. Some example content with simple HTML. Some example content with simple HTML.


With Us lol, he takes a step away from direct commentary on race, despite what many of his fans might expect. There is a powerful statement, however, in the simple fact that the terrorized family at the story’s center is black. Nyong’o plays the mom; Winston Duke, Black Panther’s M’Baku, is the dad; they and the actors playing their kids also take the roles of their shadow-selves, which posed both artistic and technical challenges. But Duke, whose imposing physique tends to typecast him, was particularly thrilled to be playing a character as well-rounded as the dad — one he thinks Peele based on himself. “He’s a loving partner,” says Duke. “He’s strong, he’s goofy, he’s sexual, he’s serious, he has a lot of insecurities and weaknesses.”


Try to answer the following code-related questions within the time limit. Keep in mind that incorrect answers will penalize your time by 10 seconds!
Questions Placeholder
Enter Initials:


How to use
-
If the desired word is before the currently displayed
word, press either the "Before" button or the left arrow key
-
If the desired word is after the currently displayed word,
press either the "After" button or the right arrow key
-
To add the currently displayed word to your sentence, press
the "Select" button or the up arrow key


CT sensors - Interfacing with an Arduino
To connect a CT sensor to an Arduino, the output signal from the CT sensor needs to be conditioned so it meets the input requirements of the Arduino analog inputs, i.e. a positive voltage between 0V and the ADC reference voltage.
Note: This page give the example of an Arduino board working at 5 V and of the EmonTx working at 3.3 V. Make sure you use the right supply voltage and bias voltage in your calculations that correspond to your setup.
This can be achieved with the following circuit which consists of two main parts:
-
The CT sensor and burden resistor
-
The biasing voltage divider (R1 & R2)
Calculating a suitable burden resistor size
If the CT sensor is a "current output" type such as the YHDC SCT-013-000, the current signal needs to be converted to a voltage signal with a burden resistor. If it is a voltage output CT you can skip this step and leave out the burden resistor, as the burden resistor is built into the CT.
1) Choose the current range you want to measure
The YHDC SCT-013-000 CT has a current range of 0 to 100 A. For this example, let's choose 100 A as our maximum current.
2) Convert maximum RMS current to peak-current by multiplying by √2.
Primary peak-current = RMS current × √2 = 100 A × 1.414 = 141.4A
3) Divide the peak-current by the number of turns in the CT to give the peak-current in the secondary coil.
The YHDC SCT-013-000 CT has 2000 turns, so the secondary peak current will be:
Secondary peak-current = Primary peak-current / no. of turns = 141.4 A / 2000 = 0.0707A
4) To maximise measurement resolution, the voltage across the burden resistor at peak-current should be equal to one-half of the Arduino analog reference voltage. (AREF / 2)
If you're using an Arduino running at 5V: AREF / 2 will be 2.5 Volts. So the ideal burden resistance will be:
Ideal burden resistance = (AREF/2) / Secondary peak-current = 2.5 V / 0.0707 A = 35.4 Ω
35 Ω is not a common resistor value. The nearest values either side of 35 Ω are 39 and 33 Ω. Always choose the smaller value, or the maximum load current will create a voltage higher than AREF. We recommend a 33 Ω ±1% burden. In some cases, using 2 resistors in series will be closer to the ideal burden value. The further from ideal the value is, the lower the accuracy will be.
Here are the same calculations as above in a more compact form:
Burden Resistor (ohms) = (AREF * CT TURNS) / (2√2 * max primary current)
emonTx V2
If you're using a battery powered emonTx V2, AREF will start at 3.3 V and slowly decrease as the battery voltage drops to 2.7 V. The ideal burden resistance for the minimum voltage would therefore be:
Ideal burden resistance = (AREF/2) / Secondary peak-current = 1.35V / 0.0707A = 19.1 Ω
19 Ω is not a common value. We have a choice of 18 or 22 Ω. We recommend using an 18 Ω ±1% burden.
emonTx V3
The emonTx V3 uses a 3.3V regulator, so it's VCC and therefore AREF, will always be 3.3V regardless of battery voltage. The standard emonTx V3 uses 22 Ω burden resistors for CT 1, 2 and 3, and a 120 Ω resistor for CT4, the high sensitivity channel. See the emonTx V3 technical wiki at: https://wiki.openenergymonitor.org/index.php?title=EmonTx_V3#Burden_Resistor_Calculations
Tool for calculating burden resistor size, CT turns and max Irms - thanks to Tyler Adkisson for building and sharing this.
(Note: this tool does not take into account maximum CT power output. Saturation and distortion will occur if the maximum output is exceeded. Nor does it take into account component tolerances, so the burden resistor value should be decreased by a few (~5) percent allow some "headroom." There is more info about component tolerances at: ACAC Component tolerances.)
2) Adding a DC Bias
If you were to connect one of the CT wires to ground and measure the voltage of the second wire, relative to ground, the voltage would vary from positive to negative with respect to ground. However, the Arduino analog inputs require a positive voltage. By connecting the CT lead we connected to ground, to a source at half the supply voltage instead, the CT output voltage will now swing above and below 2.5 V thus remaining positive.
Resistors R1 & R2 in the circuit diagram above are a voltage divider that provides the 2.5 V source (1.65 V for the emonTx). Capacitor C1 has a low reactance - a few hundred ohms - and provides a path for the alternating current to bypass the resistor. A value of 10 μF is suitable.
Choosing a suitable value for resistors R1 & R2:
Higher resistance lowers quiescent energy consumption.
We use 10 kΩ resistors for mains powered monitors. The emonTx uses 470 kΩ resistors to keep the power consumption to a minimum, as it is intended to run on batteries for several months.
Arduino sketch
To use the above circuit to measure RMS current, with an assumed fixed RMS voltage (e.g. 240V) to indicate approximate apparent power, use this Arduino sketch: Arduino sketch - current only
Re: CT sensors - Interfacing with an Arduino
Hi everybody!
I need some help with CSLA2CD Honeywell hall efect. The question is that it´s need a minimun of 6V DC to work, recomended 8V and the output is VCC/2, incrementing 0,033V for every Amp. So I have connected it to 8V, and the output is 4V without load...
How can I connect to arduino?? Is it necesary to modify the library??
Thanks in advace!
Re: CT sensors - Interfacing with an Arduino
I'm experiencing some Problems with this circuit, meaning I'm not getting any values.
I got the SCT-013-000 and I'm using 320 Ohm Burden Resistor to measure a Current of 10A.
I already checked my circuit (build it 2 times, checked voltages) and now also the SCT. There I noticed, it has got an internal resistance of 100 Ohm. Could that be a problem?
What more can I do?
Sebi
Re: CT sensors - Interfacing with an Arduino
I use two of the sct-013-000 on my system. 120 volts with a 3.3volts Arduino. I use a 47 ohms resistor on each. This gives me a 50 amps maximum range on the ct instead of the 100 amps max, but I use them for measuring internal energy on individual breakers (220 volts) and the max one is the clothes dryer at 40 amps. To measure up to 100 amps, you would need 25 ohms resistor or so. I used my alternate method (explained in another comment) to chose the burden resistor since nobody seems to really know the number of turns on this device
Re: CT sensors - Interfacing with an Arduino
wrt this sensors
which one is more convenient to use, not for the whole house monitoring (ive got a efergy there) but for the different sections of the house.
That would be a max of 2000W to 3000W in each.
If i read correctly both will measure up to 5amps (230V*5A=1150W??) so thats maximum per sensor?
also, the 100 version would be better cause it outputs 0-5mA so more precise ??
Please any help.
Thanks
TA12L-200
www.ebay.com/itm/0-5A-Input-2-5mA-Output-AC-Current-Transformer-TA12-200-/300609568022
TA12L-100
www.ebay.com/itm/TA12L-100-Epoxy-Resin-Embedding-Current-Transformer-Red-/350497986004
Re: CT sensors - Interfacing with an Arduino
I think you have the example burden values reversed for the 3.3V and 5.0V implementations of the SCT-013-000. If you use the recommended 56 ohms in a 3.3V system, (33 mA * 1.414) * 56 ohms = 2.61V. Add the 1.65V offset value, and your peak voltage is 2.61 + 1.65 = 4.26V in a 3.3V system. Or are you using a different ADC reference value?
Re: CT sensors - Interfacing with an Arduino
Hi, thanks for noticing this. It turns out that the number of turns on the SCT-0130-00 are different to what we initally though. The number of turns is acutally very similar (if not the same) as the efergy CT. The datasheet is not clear on this. I've removed the recomended burden resistor values while we do some more testing. We have been using 15ohm burden rersistors in the emonTx running at 3.3V.
Re: CT sensors - Interfacing with an Arduino
Any luck with testing the SCT-013-000? I'm still having accuracy problems with the two I have?
Re: CT sensors - Interfacing with an Arduino
I experienced accurancy problem me too. Any news and testing for SCT-013-000?
Re: CT sensors - Interfacing with an Arduino
They are quite precise. I use a 47 ohms burden resistor at 3.3volts. This means roughly 50 amps max over a 512 range on the Arduinos analog input pin, so about 10 ticks per amp, or 100 ma per tick. This is theorical. As the sct013-000 outputs 33mA max at 100 amps, spread over 512 steps on the analog pin, don't expect miracles. I do get a final tested resolution of about 50 watts over the entire range, which is not so bad. If I need more precision, I use the sct-013-030 without a burden resistor. On a 3.3 volts system, it's one volt output is precive enough.


| Opcode/Instruction | Op/En | 64/32 -bit Mode | CPUID Feature Flag | Description |
|---|---|---|---|---|
|
VEX.DDS.128.66.0F38.W0 92 /r VGATHERDPS xmm1, vm32x, xmm2 |
RMV | V/V | AVX2 | Using dword indices specified in vm32x, gather single-preci-sion FP values from memory conditioned on mask specified by xmm2. Conditionally gathered elements are merged into xmm1. |
|
VEX.DDS.128.66.0F38.W0 93 /r VGATHERQPS xmm1, vm64x, xmm2 |
RMV | V/V | AVX2 | Using qword indices specified in vm64x, gather single-preci-sion FP values from memory conditioned on mask specified by xmm2. Conditionally gathered elements are merged into xmm1. |
|
VEX.DDS.256.66.0F38.W0 92 /r VGATHERDPS ymm1, vm32y, ymm2 |
RMV | V/V | AVX2 | Using dword indices specified in vm32y, gather single-preci-sion FP values from memory conditioned on mask specified by ymm2. Conditionally gathered elements are merged into ymm1. |
|
VEX.DDS.256.66.0F38.W0 93 /r VGATHERQPS xmm1, vm64y, xmm2 |
RMV | V/V | AVX2 | Using qword indices specified in vm64y, gather single-preci-sion FP values from memory conditioned on mask specified by xmm2. Conditionally gathered elements are merged into xmm1. |
| Op/En | Operand 1 | Operand 2 | Operand 3 | Operand 4 |
| A | ModRM:reg (r,w) |
BaseReg (R): VSIB:base, VectorReg(R): VSIB:index |
VEX.vvvv (r, w) | NA |
The instruction conditionally loads up to 4 or 8 single-precision floating-point values from memory addresses spec-ified by the memory operand (the second operand) and using dword indices. The memory operand uses the VSIB form of the SIB byte to specify a general purpose register operand as the common base, a vector register for an array of indices relative to the base and a constant scale factor.
The mask operand (the third operand) specifies the conditional load operation from each memory address and the corresponding update of each data element of the destination operand (the first operand). Conditionality is speci-fied by the most significant bit of each data element of the mask register. If an element’s mask bit is not set, the corresponding element of the destination register is left unchanged. The width of data element in the destination register and mask register are identical. The entire mask register will be set to zero by this instruction unless the instruction causes an exception.
Using qword indices, the instruction conditionally loads up to 2 or 4 single-precision floating-point values from the VSIB addressing memory operand, and updates the lower half of the destination register. The upper 128 or 256 bits of the destination register are zero’ed with qword indices.
This instruction can be suspended by an exception if at least one element is already gathered (i.e., if the exception is triggered by an element other than the rightmost one with its mask bit set). When this happens, the destination register and the mask operand are partially updated; those elements that have been gathered are placed into the destination register and have their mask bits set to zero. If any traps or interrupts are pending from already gath-ered elements, they will be delivered in lieu of the exception; in this case, EFLAG.RF is set to one so an instruction breakpoint is not re-triggered when the instruction is continued.
If the data size and index size are different, part of the destination register and part of the mask register do not correspond to any elements being gathered. This instruction sets those parts to zero. It may do this to one or both of those registers even if the instruction triggers an exception, and even if the instruction triggers the exception before gathering any elements.
VEX.128 version: For dword indices, the instruction will gather four single-precision floating-point values. For qword indices, the instruction will gather two values and zeroes the upper 64 bits of the destination.
VEX.256 version: For dword indices, the instruction will gather eight single-precision floating-point values. For qword indices, the instruction will gather four values and zeroes the upper 128 bits of the destination.
Note that:
DEST (cid:197) SRC1; BASE_ADDR: base register encoded in VSIB addressing; VINDEX: the vector index register encoded by VSIB addressing; SCALE: scale factor encoded by SIB:[7:6]; DISP: optional 1, 4 byte displacement; MASK (cid:197) SRC3;
VGATHERDPS (VEX.128 version)
FOR j(cid:197) 0 to 3 i (cid:197) j * 32; IF MASK[31+i] THEN MASK[i +31:i] (cid:197) FFFFFFFFH; // extend from most significant bit ELSE MASK[i +31:i] (cid:197) 0; FI; ENDFOR MASK[VLMAX-1:128] (cid:197) 0; FOR j(cid:197) 0 to 3 i (cid:197) j * 32; DATA_ADDR (cid:197) BASE_ADDR + (SignExtend(VINDEX[i+31:i])*SCALE + DISP; IF MASK[31+i] THEN DEST[i +31:i] (cid:197) FETCH_32BITS(DATA_ADDR); // a fault exits the instruction FI; MASK[i +31:i] (cid:197) 0; ENDFOR DEST[VLMAX-1:128] (cid:197) 0; (non-masked elements of the mask register have the content of respective element cleared)
VGATHERQPS (VEX.128 version)
FOR j(cid:197) 0 to 3 i (cid:197) j * 32; IF MASK[31+i] THEN MASK[i +31:i] (cid:197) FFFFFFFFH; // extend from most significant bit ELSE MASK[i +31:i] (cid:197) 0; FI; ENDFOR MASK[VLMAX-1:128] (cid:197) 0; FOR j(cid:197) 0 to 1 k (cid:197) j * 64; i (cid:197) j * 32; DATA_ADDR (cid:197) BASE_ADDR + (SignExtend(VINDEX1[k+63:k])*SCALE + DISP; IF MASK[31+i] THEN DEST[i +31:i] (cid:197) FETCH_32BITS(DATA_ADDR); // a fault exits the instruction FI; MASK[i +31:i] (cid:197) 0; ENDFOR MASK[127:64] (cid:197) 0; DEST[VLMAX-1:64] (cid:197) 0; (non-masked elements of the mask register have the content of respective element cleared)
VGATHERDPS (VEX.256 version)
FOR j(cid:197) 0 to 7 i (cid:197) j * 32; IF MASK[31+i] THEN MASK[i +31:i] (cid:197) FFFFFFFFH; // extend from most significant bit ELSE MASK[i +31:i] (cid:197) 0; FI; ENDFOR FOR j(cid:197) 0 to 7 i (cid:197) j * 32; DATA_ADDR (cid:197) BASE_ADDR + (SignExtend(VINDEX1[i+31:i])*SCALE + DISP; IF MASK[31+i] THEN DEST[i +31:i] (cid:197) FETCH_32BITS(DATA_ADDR); // a fault exits the instruction FI; MASK[i +31:i] (cid:197) 0; ENDFOR (non-masked elements of the mask register have the content of respective element cleared)
VGATHERQPS (VEX.256 version)
FOR j(cid:197) 0 to 7 i (cid:197) j * 32; IF MASK[31+i] THEN MASK[i +31:i] (cid:197) FFFFFFFFH; // extend from most significant bit ELSE MASK[i +31:i] (cid:197) 0; FI; ENDFOR FOR j(cid:197) 0 to 3 k (cid:197) j * 64; i (cid:197) j * 32; DATA_ADDR (cid:197) BASE_ADDR + (SignExtend(VINDEX1[k+63:k])*SCALE + DISP; IF MASK[31+i] THEN DEST[i +31:i] (cid:197) FETCH_32BITS(DATA_ADDR); // a fault exits the instruction FI; MASK[i +31:i] (cid:197) 0; ENDFOR MASK[VLMAX-1:128] (cid:197) 0; DEST[VLMAX-1:128] (cid:197) 0; (non-masked elements of the mask register have the content of respective element cleared)
VGATHERDPS:
__m128 _mm_i32gather_ps (float const * base, __m128i index, const int scale);
VGATHERDPS:
__m128 _mm_mask_i32gather_ps (__m128 src, float const * base, __m128i index, __m128 mask, const int scale);
VGATHERDPS:
__m256 _mm256_i32gather_ps (float const * base, __m256i index, const int scale);
VGATHERDPS:
__m256 _mm256_mask_i32gather_ps (__m256 src, float const * base, __m256i index, __m256 mask, const int
scale);
VGATHERQPS:
__m128 _mm_i64gather_ps (float const * base, __m128i index, const int scale);
VGATHERQPS:
__m128 _mm_mask_i64gather_ps (__m128 src, float const * base, __m128i index, __m128 mask, const int scale);
VGATHERQPS:
__m128 _mm256_i64gather_ps (float const * base, __m256i index, const int scale);
VGATHERQPS:
__m128 _mm256_mask_i64gather_ps (__m128 src, float const * base, __m256i index, __m128 mask, const int
scale);
None
See Exceptions Type 12


--- layout: default title: Home slug: home ---
Welcome to the Montavilla Neighborhood Association. Please check back on this site regularly for updates, events, and updated open meeting records.


--- title: loadData sidebar: function_reference_sidebar permalink: loadData.html folder: function_reference toc: false ---
import PoleFigure, EBSD, and ODF data
loadData is a low level method for importing EBSD, PoleFigure, ODF and Tensor data from external files. It autodetects the format of the file. As parameters the method requires a filename and the crystal and specimen symmetry.
| fname | filename |
| cs, ss | crystal, specimen symmetry (optional) |
| data | EBSD, PoleFigure, SO3Fun, tensor, vector3d, orientation |
| interface | specific interface to be used |
| comment | comment to be associated with the data |


JavaScript Event Challenge: Challenge 25
Here is the first paragraph of text
Add a paragraph
Remove paragraph


{% extends "base.html" %} {% block content %}
{{ content.article | linebreaks }}
Project published on:
Number of views:


Jamshedpur:-
Tata Main Hospital
Steel City Clinic & Research Centre
Dhatkidih COVID-19 Vaccine
Red Cross Bhavan
Kantilal Gandhi Hospital
Meherbai Tata Memorial Hospital


VVR Industrial Links is a pioneer in wooden safety match box manufacturing. We are one the best Match Box Manufacturers in India. We own end to end process in the match box manufacturing sector. This gives definitive authority within the enterprise frees us from any business dependencies.
Our process driven workflow enables us to deliver our products right on time and at effective price. Our transparency policy enables necessary updates to clients with a live updates on the process and allows them to monitor every step via live CCTV camera installed on our industries.
We have been a reliable and trustworthy exporters of wooden safety matches in India over 25 years now. Over these years we have hugely expanded our infrastructure which is one of our key strength on delivering quality.


DominatingQueens Class Reference
[Example scripts (models)]
Example: Dominating Queens More...
Public Member Functions | |
| DominatingQueens (const SizeOptions &opt) | |
| The actual problem. | |
| virtual IntVar | cost (void) const |
| Return cost. | |
| DominatingQueens (bool share, DominatingQueens &s) | |
| Constructor for cloning s. | |
| virtual Space * | copy (bool share) |
| Perform copying during cloning. | |
| virtual void | print (std::ostream &os) const |
| Print solution. | |
Protected Member Functions | |
| int | xy (int x, int y) const |
| Compute coordinate pair from x and y. | |
| int | x (int xy) const |
| Compute x coordinate from pair xy. | |
| int | y (int xy) const |
| Compute y coordinate from pair xy. | |
| IntSet | attacked (int xy) |
| Compute set of fields that can be attacked by xy. | |
Protected Attributes | |
| const int | n |
| Size of the board. | |
| IntVarArray | b |
| Fields on the board. | |
| IntVar | q |
| Number of queens. |
Detailed Description
Example: Dominating Queens
Place a number of queens on a n times n chessboard such that each squares is either attacked or occupied by a queen.
The model is taken from: C. Bessiere, E. Hebrard, B. Hnich, Z. Kiziltan, and T. Walsh, Filtering Algorithms for the NValue Constraint, Constraints, 11(4), 271-293, 2006.
Definition at line 57 of file dominating-queens.cpp.
Constructor & Destructor Documentation
| DominatingQueens::DominatingQueens | ( | const SizeOptions & | opt | ) | [inline] |
The actual problem.
Definition at line 90 of file dominating-queens.cpp.
| DominatingQueens::DominatingQueens | ( | bool | share, | |
| DominatingQueens & | s | |||
| ) | [inline] |
Constructor for cloning s.
Definition at line 120 of file dominating-queens.cpp.
Member Function Documentation
| int DominatingQueens::xy | ( | int | x, | |
| int | y | |||
| ) | const [inline, protected] |
Compute coordinate pair from x and y.
Definition at line 66 of file dominating-queens.cpp.
| int DominatingQueens::x | ( | int | xy | ) | const [inline, protected] |
Compute x coordinate from pair xy.
Definition at line 70 of file dominating-queens.cpp.
| int DominatingQueens::y | ( | int | xy | ) | const [inline, protected] |
Compute y coordinate from pair xy.
Definition at line 74 of file dominating-queens.cpp.
| IntSet DominatingQueens::attacked | ( | int | xy | ) | [inline, protected] |
Compute set of fields that can be attacked by xy.
Definition at line 78 of file dominating-queens.cpp.
| virtual IntVar DominatingQueens::cost | ( | void | ) | const [inline, virtual] |
Return cost.
Definition at line 115 of file dominating-queens.cpp.
| virtual Space* DominatingQueens::copy | ( | bool | share | ) | [inline, virtual] |
Perform copying during cloning.
Definition at line 128 of file dominating-queens.cpp.
| virtual void DominatingQueens::print | ( | std::ostream & | os | ) | const [inline, virtual] |
Print solution.
Reimplemented from Gecode::Driver::ScriptBase< BaseSpace >.
Definition at line 134 of file dominating-queens.cpp.
Member Data Documentation
const int DominatingQueens::n [protected] |
Size of the board.
Definition at line 60 of file dominating-queens.cpp.
IntVarArray DominatingQueens::b [protected] |
Fields on the board.
Definition at line 62 of file dominating-queens.cpp.
IntVar DominatingQueens::q [protected] |
Number of queens.
Definition at line 64 of file dominating-queens.cpp.
The documentation for this class was generated from the following file:


  The Complete Quit System Rebate & Discount thesis_description: Our The Complete Quit System Discount Coupon Code for completequitsystem.com. We have the best The Complete Quit System Rebate anywhere. thesis_keywords: The Complete Quit System , The Complete Quit System Coupon Code, The Complete Quit System Discount, The Complete Quit System Rebate product_name: The Complete Quit System hop_url: http://www.icouponblog.com/hop.php?id=76 ---
Most quit smoking programs deal only with nicotine so they don't really get rid of your desire to smoke. Most smokers have a psychological addiction to smoking. If you have tried nicotine patches, gums, herbs, acupuncture, and still get gut wrenching cravings to smoke, The Complete Quit System is for you. Nicotine is extremely addictive, but nicotine is completely metabolized by your body in 72 hours. In other words you should be cured of your smoking habit in 72 hours. If you still desire a cigarette, it means you are psychologically dependent and addicted to smoking. The Complete Quit System addresses the problem at the very base. Use our discount coupon on The Complete Quit System to get cash back rebates.
The Complete Quit System is designed to work. Created and produced by a psychologist, this unique science-based approach provides the missing link for many people, allowing them to quit for good. The product includes a downloadable step-by-step program manual, along with e-mail and phone support provided by a psychologist. Get your mind and body to quit smoking with The Complete Quit System. Use our cash back rebate to get the best discount on a great product.


{% if active_alerts %}
Active Alerts
{% endif %} {% for alert in active_alerts %}
https://www.facebook.com/events/{{ alert.0 }}/
{{ alert.1 }}
TURN OFF
{% empty%}
There are currently no active alerts.
{% endfor %}
Create New Alert
Link To Facebook Event
Your Service Provider
AT&T
Verizon
T-Mobile
Sprint
Your Phone Number
SET NEW ALERT
{#
#}


{% extends 'Kode_calendar/main.html' %} {%load static%} {% block content %}
One page for all the contest happening in all the websites
Sending reminder via mail 24 hours before the contest
Sending system notification 10 minutes before the contest


enum class drop_policy : unsigned char {
all = 1, // Remove row if all columns are nan
any = 2, // Remove row if any column is nan
threshold = 3 // Remove row if threshold number of columns are nan
};
|
This policy specifies what rows to drop/remove based on missing column data
all: Drop the row if all columns are missing
any: Drop the row if any column is missing
threshold: Drop the column if threshold number of columns are missing
|


--- layout: example permalink: /examples/jointjs/ exampleId: jointjs stylesheets: - /libs/jointjs/dist/joint.css - /examples/jointjs/jointjs.css -<EMAIL_ADDRESS>overview: |- This example demonstrates shared editing of a graph visualized with the Joint JS library. The example uses the Convergence Joint JS Utils to simplify the binding between Joint JS and Convergence. The example demonstrates shared pointers and selection, as well as real time editing. ---


Provide quality, pixel perfect, and vibrant custom web designing services that build impressive image of your business.
Build innovative, intuitive and successful websites and web apps using leading Open Source technologies and proven methodologies.
Fully responsive, innovative mobile website development that automatically adjust to fit any device, including desktop, tablet or smartphone.
Using latest technologies such as CSS3m HTML5 and responsive Twitter bootstrap and foundation framework in every website designing / development project.
Just like over 60 million websites built on WordPress platform, we help you create your identity on WordPress as well.
Developing online stores with custom designs using Open Source Platforms such as Woo Commerce, Os commerce, Open Cart, CS Cart and more.
As the name Key Concepts suggests, there are basic key concepts in any area of endeavor that, when understood and applied, enable you to take your organization to the next level. Key Concepts works with organizations and individuals to teach and mentor critical skills and invaluable techniques designed to accelerate success.We help you develop purposeful and focused goals and then implement strategies designed to operationalize your mission and vision. Key Concepts wants to be your partner every step of the way – from idea incubation to celebration. We will help you take consistent action that gets you moving in the right direction toward your goals, and maintain that momentum so you can achieve all of your objectives in the shortest time possible.
Read MoreLorem ipsum dolor sit amet, consectetur adipisicing elit. Explicabo voluptas dolore at, cupiditate pariatur, ea sequi illum beatae accusantium! Doloribus.
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Totam modi obcaecati excepturi molestias perferendis commodi porro! Quisquam quibusdam veniam iusto.
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Totam modi obcaecati excepturi.
<EMAIL_ADDRESS>hyderabad
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Totam modi obcaecati excepturi molestias perferendis commodi porro! Quisquam quibusdam veniam iusto.
5 Hours ago
Lorem ipsum dolor sit amet, consectetur adipisicing elit.


---
layout: archive
title: Lean Prover Zulip Chat Archive
permalink: 113488general/02642implicitparametersofstructureclassfields.html
---
The archive URL format has changed. Please find this page at:
https://leanprover-community.github.io/archive/stream/113488-general/topic/implicit.20parameters.20of.20structure.2Fclass.20fields.html


Before Change
resnet = keras_resnet.models.ResNet152(inputs, include_top=False, freeze_bn=True)
// create the full model
model = retinanet.retinanet_bbox(inputs=inputs, num_classes=num_classes, backbone=resnet,
backbone_layers=["res3d_relu", "res4f_relu", "res5c_relu"], **kwargs)
return model
After Change
// create the full model
layer_names = ["res3d_relu", "res4f_relu", "res5c_relu"]
layer_outputs = [resnet.get_layer(name).output for name in layer_names]
model = retinanet.retinanet_bbox(inputs=inputs, num_classes=num_classes,
backbone_layers=layer_outputs, **kwargs)
return model


{% load static %}
Lakshya CTF is an online platform for students to test their penetration testing skills. It is a gateway to prepare students . Lakshya CTF was co-founded by Chaitanya Rahalkar and Anushka Virgaonkar.


Just One Step...
We're ready to migrate your schedules from CoursePad.me Beta
After migration, you shall start accessing CoursePad.me at https://coursepad.me
Warning: your existing schedules on new CoursePad.me will be overwritten!
Migrate Now & Start Using New CoursePad.me