SUBROUTINE ZSPTRS( UPLO, N, NRHS, AP, IPIV, B, LDB, INFO ) * * -- LAPACK routine (version 3.1) -- * Univ. of Tennessee, Univ. of California Berkeley and NAG Ltd.. * November 2006 * * .. Scalar Arguments .. CHARACTER UPLO INTEGER INFO, LDB, N, NRHS * .. * .. Array Arguments .. INTEGER IPIV( * ) COMPLEX*16 AP( * ), B( LDB, * ) * .. * * Purpose * ======= * * ZSPTRS solves a system of linear equations A*X = B with a complex * symmetric matrix A stored in packed format using the factorization * A = U*D*U**T or A = L*D*L**T computed by ZSPTRF. * * Arguments * ========= * * UPLO (input) CHARACTER*1 * Specifies whether the details of the factorization are stored * as an upper or lower triangular matrix. * = 'U': Upper triangular, form is A = U*D*U**T; * = 'L': Lower triangular, form is A = L*D*L**T. * * N (input) INTEGER * The order of the matrix A. N >= 0. * * NRHS (input) INTEGER * The number of right hand sides, i.e., the number of columns * of the matrix B. NRHS >= 0. * * AP (input) COMPLEX*16 array, dimension (N*(N+1)/2) * The block diagonal matrix D and the multipliers used to * obtain the factor U or L as computed by ZSPTRF, stored as a * packed triangular matrix. * * IPIV (input) INTEGER array, dimension (N) * Details of the interchanges and the block structure of D * as determined by ZSPTRF. * * B (input/output) COMPLEX*16 array, dimension (LDB,NRHS) * On entry, the right hand side matrix B. * On exit, the solution matrix X. * * LDB (input) INTEGER * The leading dimension of the array B. LDB >= max(1,N). * * INFO (output) INTEGER * = 0: successful exit * < 0: if INFO = -i, the i-th argument had an illegal value * * ===================================================================== * * .. Parameters .. COMPLEX*16 ONE PARAMETER ( ONE = ( 1.0D+0, 0.0D+0 ) ) * .. * .. Local Scalars .. LOGICAL UPPER INTEGER J, K, KC, KP COMPLEX*16 AK, AKM1, AKM1K, BK, BKM1, DENOM * .. * .. External Functions .. LOGICAL LSAME EXTERNAL LSAME * .. * .. External Subroutines .. EXTERNAL XERBLA, ZGEMV, ZGERU, ZSCAL, ZSWAP * .. * .. Intrinsic Functions .. INTRINSIC MAX * .. * .. Executable Statements .. * INFO = 0 UPPER = LSAME( UPLO, 'U' ) IF( .NOT.UPPER .AND. .NOT.LSAME( UPLO, 'L' ) ) THEN INFO = -1 ELSE IF( N.LT.0 ) THEN INFO = -2 ELSE IF( NRHS.LT.0 ) THEN INFO = -3 ELSE IF( LDB.LT.MAX( 1, N ) ) THEN INFO = -7 END IF IF( INFO.NE.0 ) THEN CALL XERBLA( 'ZSPTRS', -INFO ) RETURN END IF * * Quick return if possible * IF( N.EQ.0 .OR. NRHS.EQ.0 ) $ RETURN * IF( UPPER ) THEN * * Solve A*X = B, where A = U*D*U'. * * First solve U*D*X = B, overwriting B with X. * * K is the main loop index, decreasing from N to 1 in steps of * 1 or 2, depending on the size of the diagonal blocks. * K = N KC = N*( N+1 ) / 2 + 1 10 CONTINUE * * If K < 1, exit from loop. * IF( K.LT.1 ) $ GO TO 30 * KC = KC - K IF( IPIV( K ).GT.0 ) THEN * * 1 x 1 diagonal block * * Interchange rows K and IPIV(K). * KP = IPIV( K ) IF( KP.NE.K ) $ CALL ZSWAP( NRHS, B( K, 1 ), LDB, B( KP, 1 ), LDB ) * * Multiply by inv(U(K)), where U(K) is the transformation * stored in column K of A. * CALL ZGERU( K-1, NRHS, -ONE, AP( KC ), 1, B( K, 1 ), LDB, $ B( 1, 1 ), LDB ) * * Multiply by the inverse of the diagonal block. * CALL ZSCAL( NRHS, ONE / AP( KC+K-1 ), B( K, 1 ), LDB ) K = K - 1 ELSE * * 2 x 2 diagonal block * * Interchange rows K-1 and -IPIV(K). * KP = -IPIV( K ) IF( KP.NE.K-1 ) $ CALL ZSWAP( NRHS, B( K-1, 1 ), LDB, B( KP, 1 ), LDB ) * * Multiply by inv(U(K)), where U(K) is the transformation * stored in columns K-1 and K of A. * CALL ZGERU( K-2, NRHS, -ONE, AP( KC ), 1, B( K, 1 ), LDB, $ B( 1, 1 ), LDB ) CALL ZGERU( K-2, NRHS, -ONE, AP( KC-( K-1 ) ), 1, $ B( K-1, 1 ), LDB, B( 1, 1 ), LDB ) * * Multiply by the inverse of the diagonal block. * AKM1K = AP( KC+K-2 ) AKM1 = AP( KC-1 ) / AKM1K AK = AP( KC+K-1 ) / AKM1K DENOM = AKM1*AK - ONE DO 20 J = 1, NRHS BKM1 = B( K-1, J ) / AKM1K BK = B( K, J ) / AKM1K B( K-1, J ) = ( AK*BKM1-BK ) / DENOM B( K, J ) = ( AKM1*BK-BKM1 ) / DENOM 20 CONTINUE KC = KC - K + 1 K = K - 2 END IF * GO TO 10 30 CONTINUE * * Next solve U'*X = B, overwriting B with X. * * K is the main loop index, increasing from 1 to N in steps of * 1 or 2, depending on the size of the diagonal blocks. * K = 1 KC = 1 40 CONTINUE * * If K > N, exit from loop. * IF( K.GT.N ) $ GO TO 50 * IF( IPIV( K ).GT.0 ) THEN * * 1 x 1 diagonal block * * Multiply by inv(U'(K)), where U(K) is the transformation * stored in column K of A. * CALL ZGEMV( 'Transpose', K-1, NRHS, -ONE, B, LDB, AP( KC ), $ 1, ONE, B( K, 1 ), LDB ) * * Interchange rows K and IPIV(K). * KP = IPIV( K ) IF( KP.NE.K ) $ CALL ZSWAP( NRHS, B( K, 1 ), LDB, B( KP, 1 ), LDB ) KC = KC + K K = K + 1 ELSE * * 2 x 2 diagonal block * * Multiply by inv(U'(K+1)), where U(K+1) is the transformation * stored in columns K and K+1 of A. * CALL ZGEMV( 'Transpose', K-1, NRHS, -ONE, B, LDB, AP( KC ), $ 1, ONE, B( K, 1 ), LDB ) CALL ZGEMV( 'Transpose', K-1, NRHS, -ONE, B, LDB, $ AP( KC+K ), 1, ONE, B( K+1, 1 ), LDB ) * * Interchange rows K and -IPIV(K). * KP = -IPIV( K ) IF( KP.NE.K ) $ CALL ZSWAP( NRHS, B( K, 1 ), LDB, B( KP, 1 ), LDB ) KC = KC + 2*K + 1 K = K + 2 END IF * GO TO 40 50 CONTINUE * ELSE * * Solve A*X = B, where A = L*D*L'. * * First solve L*D*X = B, overwriting B with X. * * K is the main loop index, increasing from 1 to N in steps of * 1 or 2, depending on the size of the diagonal blocks. * K = 1 KC = 1 60 CONTINUE * * If K > N, exit from loop. * IF( K.GT.N ) $ GO TO 80 * IF( IPIV( K ).GT.0 ) THEN * * 1 x 1 diagonal block * * Interchange rows K and IPIV(K). * KP = IPIV( K ) IF( KP.NE.K ) $ CALL ZSWAP( NRHS, B( K, 1 ), LDB, B( KP, 1 ), LDB ) * * Multiply by inv(L(K)), where L(K) is the transformation * stored in column K of A. * IF( K.LT.N ) $ CALL ZGERU( N-K, NRHS, -ONE, AP( KC+1 ), 1, B( K, 1 ), $ LDB, B( K+1, 1 ), LDB ) * * Multiply by the inverse of the diagonal block. * CALL ZSCAL( NRHS, ONE / AP( KC ), B( K, 1 ), LDB ) KC = KC + N - K + 1 K = K + 1 ELSE * * 2 x 2 diagonal block * * Interchange rows K+1 and -IPIV(K). * KP = -IPIV( K ) IF( KP.NE.K+1 ) $ CALL ZSWAP( NRHS, B( K+1, 1 ), LDB, B( KP, 1 ), LDB ) * * Multiply by inv(L(K)), where L(K) is the transformation * stored in columns K and K+1 of A. * IF( K.LT.N-1 ) THEN CALL ZGERU( N-K-1, NRHS, -ONE, AP( KC+2 ), 1, B( K, 1 ), $ LDB, B( K+2, 1 ), LDB ) CALL ZGERU( N-K-1, NRHS, -ONE, AP( KC+N-K+2 ), 1, $ B( K+1, 1 ), LDB, B( K+2, 1 ), LDB ) END IF * * Multiply by the inverse of the diagonal block. * AKM1K = AP( KC+1 ) AKM1 = AP( KC ) / AKM1K AK = AP( KC+N-K+1 ) / AKM1K DENOM = AKM1*AK - ONE DO 70 J = 1, NRHS BKM1 = B( K, J ) / AKM1K BK = B( K+1, J ) / AKM1K B( K, J ) = ( AK*BKM1-BK ) / DENOM B( K+1, J ) = ( AKM1*BK-BKM1 ) / DENOM 70 CONTINUE KC = KC + 2*( N-K ) + 1 K = K + 2 END IF * GO TO 60 80 CONTINUE * * Next solve L'*X = B, overwriting B with X. * * K is the main loop index, decreasing from N to 1 in steps of * 1 or 2, depending on the size of the diagonal blocks. * K = N KC = N*( N+1 ) / 2 + 1 90 CONTINUE * * If K < 1, exit from loop. * IF( K.LT.1 ) $ GO TO 100 * KC = KC - ( N-K+1 ) IF( IPIV( K ).GT.0 ) THEN * * 1 x 1 diagonal block * * Multiply by inv(L'(K)), where L(K) is the transformation * stored in column K of A. * IF( K.LT.N ) $ CALL ZGEMV( 'Transpose', N-K, NRHS, -ONE, B( K+1, 1 ), $ LDB, AP( KC+1 ), 1, ONE, B( K, 1 ), LDB ) * * Interchange rows K and IPIV(K). * KP = IPIV( K ) IF( KP.NE.K ) $ CALL ZSWAP( NRHS, B( K, 1 ), LDB, B( KP, 1 ), LDB ) K = K - 1 ELSE * * 2 x 2 diagonal block * * Multiply by inv(L'(K-1)), where L(K-1) is the transformation * stored in columns K-1 and K of A. * IF( K.LT.N ) THEN CALL ZGEMV( 'Transpose', N-K, NRHS, -ONE, B( K+1, 1 ), $ LDB, AP( KC+1 ), 1, ONE, B( K, 1 ), LDB ) CALL ZGEMV( 'Transpose', N-K, NRHS, -ONE, B( K+1, 1 ), $ LDB, AP( KC-( N-K ) ), 1, ONE, B( K-1, 1 ), $ LDB ) END IF * * Interchange rows K and -IPIV(K). * KP = -IPIV( K ) IF( KP.NE.K ) $ CALL ZSWAP( NRHS, B( K, 1 ), LDB, B( KP, 1 ), LDB ) KC = KC - ( N-K+2 ) K = K - 2 END IF * GO TO 90 100 CONTINUE END IF * RETURN * * End of ZSPTRS * END


#Danilo Carandang Aspiring Full Stack Javascript and Hybrid Mobile App Developer
Currently
I’m a student at SoftStack Factory, due to finish around January 2017. During my bootcamp I’ve taken up an interest in mobile technologies and web development.
Education
Fall 2016-17
SoftStack Factory - San Diego, CA Certificate of completion
Spring 2016
Miramar Community College - San Diego, CA Certificate of Performance:Music Production and Engineering : Music
Continuing education in Music production and Engineering
Spring 2005
Mt. Carmel High School - San Deigo, CA High School Diploma
Technical skills
- HTML and CSS
- Javascript
- Angular 1 & 2
- Node.js
- Express.js
- MongoDB
- Ionic 1 & 2
Projects
CV
I created a this web page to show off my CV.
Midterm Project - Weather Watcher App
IdSentral Website
Achievements
Customer Service Researched, calmed and rapidly resolved client conflicts to prevent loss of key accounts.
Customer Interface Greeted customers upon entrance and handled personal and merchant account transactions, wires, safe deposit box access, recording, and surrendering. Assisted customers over the phone regarding store operations, product, promotions and questions.
Experience
2014-16
Pizza Hut - Delivery Driver
Providing exceptional customer service in store and on delivery in a safe and timely manner. Actively taking initiative in learning multiple facets of the job working as a team member performing cashier duties, product assistance and cleaning.
2015-16
Three Treasures Cultural Arts Society - Assisstant Program Coordinator, Music Teacher
Worked during the school year as the assisstant program coordinator for Crown Point Junior Music Academy and as the music teacher. Taught elementary school students the fundamentals of music theory and how to play the ukulele during the normal school year and the piano over the summer.
2009-14
Union Bank - Senior Teller
Responsible for completing customers transactions in a timely manner and guaranteeing high level of customer service. Recommended, selected and helped locate products based on customer needs and desires. Regularly sought opportunities to up sell and add on additional merchandise. Processed and issued cashier’s checks and money orders for customers.
Hobbies
- Coding
- Cooking
- Learning
- PodCast
- Personal Development


A channel to discuss trading. For useful links and more info click the pinned messages to the right.
Between 17-Dec-19 12:00 AM and 18-Dec-19 12:00 AM
klein17-Dec-19 12:58 AM
I have not seen such levels of delusion with the amount of people bashing HEX
klein17-Dec-19 01:16 AM
USD kmd pairs would be awesome is this happening? If KMD is going to be listed on US binance now would be the time
tolken17-Dec-19 01:43 AM
Indeed, but keep in mind Bittrex has usd Kmd pairs already
klein17-Dec-19 01:44 AM
HEX sounds like it has a decent size community that could onboard more users and volume to AtomicDex(edited)
(I own zero HEX)
tolken17-Dec-19 01:48 AM
You’re saying it isn’t a scam?
klein17-Dec-19 01:48 AM
theres also some Gold back erc20 tokens(edited)
would be cool to see atomic swaps for gold
tolken17-Dec-19 01:50 AM
yeah, paxg I think is one of them
tempted try and get some onto atomic dex.
klein17-Dec-19 01:50 AM
a Gold stablecoin on komodo would be cooler
tolken17-Dec-19 01:51 AM
Yeah, still a little ways off still. But yes.
one thing I’m not clear on with KmD loans. Seems with such low volumes for Kmd, price can be thrown around like a rag doll and seemingly lead to easy liquidations. Maybe not so easy, but seems so.
klein17-Dec-19 01:52 AM
@tolken I was out of the loop but recently listened to Peter McCormack/What bitcoin did podcast guy with Richard Heart
What a moron
tolken17-Dec-19 01:52 AM
I guess that would just be when using Kmd as collateral.
klein17-Dec-19 01:53 AM
People bashing HEX without even putting any effort into understanding it are morons(edited)
and also are delusional and incapable of any sort of self reflection(edited)
look a where we are standing right now
tolken17-Dec-19 01:54 AM
yea not too bright to dismiss without any real understanding, but it does seem fishy at first glance.
klein17-Dec-19 01:54 AM
This is crypto
Its risky
crypto has had exponential growth(edited)
traded like a pump and dump
as far as I can tell Richard has been brutally honest about that
Denying bitcoin is any different you are absolutely delusional
tolken17-Dec-19 01:59 AM
bitcoin is a much simpler concept to grasp@in my opinion.
MorganJekyll17-Dec-19 02:08 AM
Let’s make a KMD airdrop and call it say “DEX” and do the same thing Richard did just to get the plebs attention and create a Twitter shit storm
klein17-Dec-19 02:15 AM
more volume on atomicdex would be of some value as opposed to trolling
one thing that I found frustrating with the AtomicDex app that is bad for onboarding users: Why can't you view the liquidity and trades without having deposited any coins?(edited)
tolken17-Dec-19 02:33 AM
You want more volume for volume sake, or you mean there’s not enough liquidity for your trades? @klein
Kmd volume specifically or you mean other pairs?
klein17-Dec-19 02:36 AM
Total traded volume
tolken17-Dec-19 02:36 AM
I’m sure it’s relatively easy to make the orderbooks (i assume this is where you’re viewing/estimating liquidity) viewable. I’m sure devs are just really trying to nail down the reliability first, but agreed it would be very welcome to see.
klein17-Dec-19 02:36 AM
and more users
Yeah I get its still beta devs are doing amazing work
tolken17-Dec-19 02:37 AM
Seems like some would have to manually track that, unless somehow it’s recorded to an Oracle at some point.
Would be badass of it ultimately ends up stored like that.
hyperDEX17-Dec-19 04:33 AM
@klein saying i am running a ponzi does it make it any less legal? Let's call a spade a spade, he gets 50% of all the coins, it is a scam to make him rich, well deserving of the hatred.
Every scam damages the rest of the cryptos actually trying to benefit society(edited)
coingirl8717-Dec-19 05:45 AM
Lol....you make jokes about waves...look where they are and look what happened to komodo
Seems that natural selection of good projects with demand will begin
polycryptoblog17-Dec-19 06:04 AM
Time will tell who will last, but waves being only 10 or so spots ahead is not impressive when they raised 10x .
Their current marketcap is less than half of what he raised . Komodos is 3.5x what was raised. Who is doing better?
coingirl8717-Dec-19 06:07 AM
Kmd is best coin ...
polycryptoblog17-Dec-19 06:10 AM
Just comparing apples to apples.
coingirl8717-Dec-19 06:12 AM
In tech view its not possible...kmd is a big fresh apple and most of all others were old wringled pears(edited)
polycryptoblog17-Dec-19 06:14 AM
Tech wise we are top tier most of our competitors though aren’t in the traditional coin space except tendermint via cosmos.
coingirl8717-Dec-19 06:35 AM
Only projects we can compare were eth and tezos
Yes they have much more funds but to whom we should compare?
actionslacks17-Dec-19 06:38 AM
subaru?
coingirl8717-Dec-19 06:40 AM
Biggest problem is demand...i Analyse that after every big pump for kmd the supernet address raised the amount. That means that the biggest part from demand came from kmd itself....i dont know if its good but i think it would be better if demand came from outside, new users....
actionslacks17-Dec-19 06:43 AM
the killer applications are being built. not much else you can do besides hype. It's getting pretty ungly out there right now though.
The following is a list of the world's largest manufacturing companies, ordered by revenue in millions of U.S. dollars according to the Fortune Global 500 in the year 2017. Currently the 100 biggest companies by revenue are included.
tolken17-Dec-19 07:00 AM
Who needs crypto. Let’s just just go back to permission-less ledgers (as in; anyone can modify it for you, however they please.)


A “FISA warrant was granted in connection with the investigation of suspected activity between the server [at Trump Tower] and two banks, SVB Bank and [Russia’s] Alfa Bank.”
Intelligence community sources said the warrant was sought because actionable intelligence provided by foreign agencies could not properly be examined without a warrant by U.S. intelligence. The intelligence concerns “U.S. Persons” who come under the remit of the FBI and not the CIA. Should a counter-intelligence investigation lead to criminal prosecutions, sources say, the Justice Department is concerned that the chain of evidence have a basis in a clear warrant. It is believed in the intelligence community that the warrant covers any “U.S. person” connected to this investigation, and thus covers Donald Trump and at least three additional men associated with his campaign.
Source: Heat Street


--- title: "Basic Data Types and Syntax in R" subtitle: "PSU R and PUMS Workshop" author: "Jamaal Green" date: "2018-08-02" output: tufte::tufte_handout: citation_package: natbib latex_engine: xelatex tufte::tufte_html: default tufte::tufte_book: citation_package: natbib latex_engine: xelatex ---
This sheet is to provide some minimal introductory knowledge for brand new beginners and to get us acquainted with the idea of tidy data from Hadley Wickham. We will try not to get bogged down into too much unnecessary detail here but we want to introduce (briefly) some of the basic data types in R, assignment and calling functions.
We can use R as a simple calculator by jsut type expressions into our consoles:
1 + 200/3
## [1] 67.66667
(12 + 35 + 98)/4 * 5
## [1] 181.25
We create new objects using the <-
operator.
my_first_object <- 7 *4
my_first_object
## [1] 28
The basic structure for making an object is object_name <- value
. For those of you coming from other languages you may wonder why R does not use =
for assignment. Well, you can, but it is generally considered better practice to stay with the <-
especially when you start designing your own functions.
Finally, in R we are constantly calling functions, pre-defined bits of code that allow us to perform all kinds of operations. The general structure for function calls is thus:
function_name(arg1 = value1, arg2 = value2...)
The basic data type in R is the vector. Of vectors there are two types:
The main difference between atomic vectors and lists, aside from the recursive nature of lists, is that vectors are homogenous while lists are heterogeneous. This means that numeric vectors hold only numeric values. If any other value is introduced, like a character, then the entire vector will be converted to a character vector, because that is the most flexible data type out of all the values.
# we use the c() command to start a vector
vec1 <- c(4, 89, 91837, 19)
class(vec1)
## [1] "numeric"
#note the addition of a character
vec2 <- c(4, 89, 91837, 19, "a")
class(vec2)
## [1] "character"
#we use list() to start a list
list_1 <- list(4, 89, 91837, 19)
class(list_1)
## [1] "list"
list_2 <- list(4, 89, 91837, 19, "a")
class(list_2)
## [1] "list"
Note how an object of class list remains a list regardless of the objects in it. While we will not focus deeply on this question, do note that you can navigate vectors using indexing like this:
#what is the third element of vec_1?
vec1[3]
## [1] 91837
#what is the first element of vec_2?
vec2[1]
## [1] "4"
Again, we won’t dwell on this but it is important to understand the differences between vectors and lists because the workhorse of our data analysis workflows, the dataframe, is a special form of list that combines multiple vectors of the same length into what we commonly recognize as a two dimensional table.
The dataframe will be the data object you work with throughout most of your R workflows. You can think of it, if it helps, as a rough equivalent of a well formatted excel worksheet. A dataframe has columns and rows. Dataframe columns are of one of the types of vectors (just look up the page if you can’t remember) and, because a dataframe is a special kind of list, dataframe columns can also hold lists. This kind of abstraction can make programming very powerful, but it can be a difficult concept to wrap your head around at first so this is all we will say on it.
“Tidy” data is a concept developed by Hadley Wickham to describe a particular way of organizing data in a table format. Again, the basic idea is that variables are held in columns, observations in rows, and each cell accounts for a singular value. For those of you familiar with databases, this is essentially what we get when discussing “long data”.


Description
The description of your character includes your character's name, how they look, and how they act.
The description of your character includes your character's name, how they look, and how they act.
The name of your character is important, it is the name of the person you become as role-play the character.
The name you choose for your character should ideally fit into the world presented by your GM. Typically, the different Races and regions in the world will have different names. Some sample names may be given in a Race's description, which can inspire you to a create a fitting name for your character.
When creating a character, you'll select a race, which will greatly influence how your character looks.
However, you can specify what your eye or hair color is, how tall you are, how much you weigh, whether you are male, female, or some other gender unique to that race, and what your skin type is.
Don't be afraid to add details such as scars, tattoos, or other distinctive features.
With your GM's permission, you can even add mystical cosmetic features such as a skeletal hand, or a holy glow that your character gives off... as long as you can reasonably describe how it is your character acquired these traits.
What drives your character to set on the road, leaving their comfortable life behind them?
Perhaps they seek gold, revenge, glory, or power. Perhaps they are simply overcome with wanderlust. Maybe they're looking for a new song or story to add to their repertoire.
Having a goal for your character while you're advenuring with your party can be very rewarding, and a good GM will be able to accomodate your character's goals into the campaign.
Flavor describes the personal touch, or flair, your character gives to their actions.
Perhaps what visual elements are included when they cast a spell, or how it is they draw a sword from its sheath.
Flavor can also be used to add flair to items, such as having a crest on a shield representing a creed your character acts under.


Ari Fogel, Stanley Fung, Luis Pedrosa, Meg Walraed-Sullivan, Ramesh Govindan, Ratul Mahajan, Todd Millstein
USENIX Symposium on Networked Systems Design and Implementation (NSDI) 2015
Nikolaj Bjørner and Garvit Juniwal and Ratul Mahajan and Sanjit A. Seshia and George Varghese
Haifa Verification Conference (HVC) 2016
Ryan Beckett, Aarti Gupta, Ratul Mahajan, David Walker
ACM SIGCOMM 2017
Aaron Gember-Jacobson, Raajay Viswanathan, Aditya Akella, Ratul Mahajan
ACM SIGCOMM 2016
Seyed K. Fayaz, Tushar Sharma, Ari Fogel, Ratul Mahajan, Todd Millstein, Vyas Sekar, George Varghese
USENIX Symposium on Operating Systems Design and Implementation (OSDI) 2016
Aaron Gember-Jacobson and Aditya Akella and Ratul Mahajan and Hongqiang Harry Liu
ACM SOSP 2017


--- title: Django admin backend author: Alex.Hildebrandt date: '2020-05-20' slug: django-admin-backend categories: - django configuration - admin tags: - django - admin - createsuperuser - make db migration subtitle: '' summary: '' authors: [] lastmod: '2020-05-20T17:14:45+02:00' featured: no image: caption: '' focal_point: '' preview_only: no projects: [] ---
When starting a django project an admin backend is created automatically. To hace access to this backend first a superuser has to be created. Before this can be done you have to migrate databases with the following command (virtual environement activated):
pyhton3 manag3.py makemigrations
pyhton3 manag3.py migrate
This ensures that all tables are available in the backend. Next you need to create a superuser with:
python3 manage.py createsuperuser
After typing name and password of the backend admin you can launch it.


Bankruptcies
List of cancellation applications
Select any application from the list to verify
| Application type | Reference | Date received | Time |
|---|---|---|---|
| Petition Action (PAB) | 532890106 | 13 November 2015 | 9:08 |
| Writ or Order (WOB) | 645122825 | 13 November 2015 | 9:14 |
| Petition Action (PAB) | 451289078 | 13 November 2015 | 9:35 |
| Writ or Order (WOB) | 512890191 | 13 November 2015 | 9:47 |
| Petition Action (PAB) | 128901232 | 13 November 2015 | 10:02 |
| Writ or Order (WOB) | 289012349 | 13 November 2015 | 10:13 |
| Writ or Order (WOB) | 645128914 | 13 November 2015 | 10:28 |
| Petition Action (PAB) | 512894533 | 13 November 2015 | 10:32 |
| Petition Action (PAB) | 128992527 | 13 November 2015 | 10:33 |
| Writ or Order (WOB) | 289980341 | 13 November 2015 | 10:41 |
| Showing 1 to 10 of 146 applications | 1 2 3 4 5 6 7 8 9 10 Next |


‘Depressed’ police officer rescued at railway station
Complains of stress at workplace
by Staff ReporterA policeman deputed to AR Camp who was found at the Kannur railway station reportedly in a depressed state was saved by his colleague and the public on Thursday.
The officer, Devadas, a resident of Mallur, had been suspended for writing a post on social media against Public Works Minister G. Sudhakaran, while he was posted at the Aralam police station. After the period of suspension, he was taken back into service three months ago and was attached to the AR camp. He was reportedly under tremendous mental and work pressure.
According to the railway police, he was found by another policeman at the railway station. He seemed depressed and when asked, he broke down. Mr. Devadas reportedly said he wanted to end his life. He expressed unhappiness over the treatment he received from his senior and a few junior colleagues at the AR Camp.
The police said though he had been deputed for Sabarimala duty, he had not reported, and his phone was switched off. On Thursday, he informed the duty officer that he was not well. He was later deputed for watch duty, which is generally not given to seniors like him.
When his request for any other duty was declined, he requested leave. However, that too was denied and he left the place.
Later, he was found at the railway station.


I LIKE IT LIKE THAT A film review by Raymond Johnston Copyright 1994 Raymond Johnston
Director: Darnell Martin Starring: Lauren Velez, Jon Seda, Rita Moreno, Griffin Dunne
Darnell Martin complained that the distribution company was marketing her film based on the fact that she is a minority woman. She felt it implied the film otherwise wasn't very good, and needed special consideration. The film is good, however; quite good. Part of what makes it original is the fact that a minority woman is the lead character. Even in the new wave of minority written and produced films, women are often relegated into demeaning stereotypical roles. Lauren Velez,who plays the central character in this film, breaks out of these stereotypes. She is average looking and intelligent, unlike the bubble-headed beauty queens that generally populate films. It is the men in her Bronx, New York neighborhood that become cartoonish stereotypes. Her husband, played by Job Seda, is more concerned with the perception of his machismo than providing for his family. His friends are an affably misguided group of ne'er-do-wells.
The plot walks a fine line between reality and satire.  Director Darnell Martin chose the hard road and treats all the characters with respect. This makes the problems that the lead character faces, like getting enough money to keep her family off of welfare, real problems. The events leading up to her financial situation have a funny side to them, but after the few jokes, the situation remains. It is here that Darnell Martin makes her statements. The male characters are willing enough to be around for the good time, but unwilling to deal with the aftermath. Unclaimed or unsupervised children abound in the film, with women characters begging the fathers to own up to their responsibility. Men want women for show at parties, but have to be blackmailed into letting them actually use their mental talents on a daily basis.
If the film broke down into the men being buffoons and the women being abused saints, it would be easy to dismiss the film as a diatribe. Fortunately, some of the female characters are willing enough to make fools of themselves. Oscar winner (for WEST SIDE STORY) Rita Moreno paints an unflattering comic portrait of the intrusive mother-in-law. She dislikes Velez because she has some African heritage, while all of her son's side of the family is "pure Castillian". The one character that makes the most sense is the transvestite.
This film is another low budget wonder. It manages to be part Cinderella story, while still letting people solve their own problems. A lot of films recently have shown the exteriors of lower income urban neighborhoods, only to show lavish sound stage interiors inhabited by rich drug lords. I LIKE IT LIKE THAT takes you inside to see how real people live.
.
The review above was posted to the
rec.arts.movies.reviews newsgroup (de.rec.film.kritiken for German reviews).
The Internet Movie Database accepts no responsibility for the contents of the
review and has no editorial control. Unless stated otherwise, the copyright
belongs to the author.
Please direct comments/criticisms of the review to relevant newsgroups.
Broken URLs inthe reviews are the responsibility of the author.
The formatting of the review is likely to differ from the original due
to ASCII to HTML conversion.
Related links: index of all rec.arts.movies.reviews reviews


Having a well rounded toolchest is the best way to tackle more advanced problems.
Learn about features like Workers, Mail, Storage Objects, Mutex and HTTP Request Handlers.
<EMAIL_ADDRESS>and<EMAIL_ADDRESS>October 28th, 2012
Wakanda Server uses Web Workers to provide you with JavaScript multithreading capabilities.
A Web Worker is created by referencing an individual JavaScript file.
When the worker is instantiated, it then becomes an object residing in memory waiting to be called.
There are two types of Web Workers:
Dedicated workers have one parent and can only communicate with their parent or the workers they spawn. Dedicated workers terminate when the parent thread ends.
Shared workers can be shared among several callers. They don't have a specific parent. Shared workers can continue to exist even after the their spawning parent thread ends.
function onconnect(msg) {
//This function is automatically called whenever another thread
// acquires a reference to the shared worker.
var thePort = msg.ports[0]; //Shared worker communication port
//This method will be called when the parent thread posts
// messages to this shared worker.
thePort.onmessage = function(messageEvt) {
var message = messageEvt.data;
switch(message.what) {
case 'htmlEmailTest':
... send email ...
break;
}//end switch
}//end onmessage callback
}//end onconnect
var theEmailWorker = new SharedWorker("sharedWorkers/emailDaemon.js", "emailDaemon");
var thePort = theEmailWorker.port;
thePort.postMessage({what: 'htmlEmailTest'});
With Wakanda, you can call a server-side JavaScript function by sending an HTTP request that fits a specific pattern (JavaScript regex).
Unlike server-side JavaScript functions that are called using RPC services, code executed using an HTTP request handler does not require the WAF library to be initialized or loaded on the client. The only requirement is for the request to be properly formatted. This means that it is particularly suited for creating "services" on the Wakanda server, giving HTTP clients access to the Web site data.
addHttpRequestHandler('/echo', 'requestHandlers.js', 'echo');
function echo(request, response) {
response.contentType = 'application/json';
return JSON.stringify(request);
}
Wakanday 2012


There are several popular citation manager software packages around. I used to work with Mendeley in class, but I stopped using it since it was acquired by El$sevier. Luckily there are good alternatives around, particularly Zotero. Zotero features a Word (MS Word, Libre Word) plugin, which is a must have for many of us. The more technically inclined folks will use Bibtex. Good news is that Zotero syncs it Library to Bibtex. Best of both worlds with Zotero – I recommend using Zotero.
Some reasons why I like Zotero:
- open source
- free
- not part of money-sucking publishers
- a lot of great add-ons such as for RStudio
- bibtex support
- MS/Libre Word plugin
In this post, I’ll show how to document your talk at a conference in Zotero.
The APA format tells us the the talk should be formatted as so:
Presenter, A. A. (Year, month). Title. Paper or poster session presented at the meeting of Organization X, Location.
Note that a talk appears to be called a paper, and a poster is a poster.
How to enter your talk details to Zotero
- Go here: Menu > File > New Item > Presentation
Note that a talk can (and should, in Zotero) be mapped using the type
presentation
(see also this post). See:
Zotero actually has two different entries for conference papers: (1) ‘Presentation’ should be used for the talk (or poster, etc.) itself, and then the conference name is important; and (2) ‘Conference paper’ should be used for a published paper in conference proceedings (but not just for a presentation). (This is confusing and I was informed about it on the forums recently: https://forums.zotero.org/discussion/8682/request-unified-style-sheet-for-linguistic-journals/ )
- Insert your details
Note that
type
should bepaper
is you a indexing a talk held at a presentation, see image below:
Here’s the standard output by Zotero:
Sauer, Sebastian. (2018, September). Reproduzierbares Schreiben in der Wissenschaft am Beispiel des Buchprojekts „Moderne Datenanalyse mit R“. Paper presented at the 51. Kongress der deutschen Gesellschaft für Psychologie, Frankfurt. Retrieved from https://www.dgpskongress.de/frontend/dgps/media/DGPs2018/DGPs2018_komplett_web.pdf
Pretty neat, right?
Note that Mendeley does not feature a type “presentation” or similar. Probably, the type Generic
might help, but the standard output is not quite correct. There are surely ways to tweak that, but I’m not aware of an easygoing way (and not motivated to search, to be honest).
Export
The most versatile export is to Bibtex. There are two ways Zotero will assist you with exporting to bibtex.
- Go here: Menu > Preferences > Export > Quick Copy Choose Bibtex or Biblatex as export format. Than go back to your library, select one or more citations and press Cmd-Shift-C (Mac). The bibtex plain text will be copied to your clipboard. Using Cmd-V you will get back your bibtex cituation in the obvious way.
Here it is:
@misc{sauer_sebastian_reproduzierbares_2018,
address = {Frankfurt},
type = {Paper},
title = {Reproduzierbares {Schreiben} in der {Wissenschaft} am {Beispiel} des {Buchprojekts} „{Moderne} {Datenanalyse} mit {R}“},
url = {https://www.dgpskongress.de/frontend/dgps/media/DGPs2018/DGPs2018_komplett_web.pdf},
author = {Sauer, Sebastian},
month = sep,
year = {2018}
}
Interestingly, Bibtex uses the misc
type as well (as Mendeley does it), but further clarifies that the type is a paper
. Sadly, the name of the conference is NOT transferred, which renders this output useless basically.
The Biblatex format further specifies a howpublished
field, und uses the type unpublished
. Unpublished makes sense as (in my case) only the abstract has been published by the society of the conference, but not a paper of the talk. That’s pretty much what we need:
@unpublished{sauer_sebastian_reproduzierbares_2018,
location = {Frankfurt},
title = {Reproduzierbares Schreiben in der Wissenschaft am Beispiel des Buchprojekts „Moderne Datenanalyse mit R“},
url = {https://www.dgpskongress.de/frontend/dgps/media/DGPs2018/DGPs2018_komplett_web.pdf},
type = {Paper},
howpublished = {Paper},
note = {51. Kongress der deutschen Gesellschaft für Psychologie},
author = {Sauer, Sebastian},
date = {2018-09-18}
}
The Zotero plugin BetterBibTex
further provides the BetterBiblatex
format:
@unpublished{sauer_sebastian_reproduzierbares_2018,
venue = {{Frankfurt}},
title = {Reproduzierbares {{Schreiben}} in Der {{Wissenschaft}} Am {{Beispiel}} Des {{Buchprojekts}} „{{Moderne Datenanalyse}} Mit {{R}}“},
url = {https://www.dgpskongress.de/frontend/dgps/media/DGPs2018/DGPs2018_komplett_web.pdf},
type = {Paper},
eventtitle = {51. {{Kongress}} Der Deutschen {{Gesellschaft}} Für {{Psychologie}}},
date = {2018-09-18},
author = {Sauer, Sebastian}
}
For the sake of curiosity, consider this bibtex export form Mendeley:
@misc{Sauer2019,
abstract = {Abstract test},
address = {N{\"{u}}rnberg},
author = {Sauer, Sebastian},
publisher = {42. Congress of Indifference},
title = {{Presentation title test}},
url = {www.some.url},
year = {2019}
}
BUT, although I have specified “type of work” is “Paper” in Mendely, this information is not carried over, for whatever reason.


Wes Bos & Scott Tolinski - Full Stack JavaScript Web Developers
Dain Miller & StartHere.FM
Jeff Barczewski
Keir Whitaker and Kieran Masterton discuss web design, web development and startups
Colin Manning
Mattias Geniar - Sysadmin, Developer, Geek
OCDevel
Mark Phoenix and Ben Hutchings
Peter Bui - Joomla consultant
Marc Grabanski
CU Village.com Web Development
Web Design Development Agency business advice
Trevor Tye, Daelan Wood
Dave Naves
Karmabunny
Meadowbright
Checkerboard Strategic Web Development
DanteCiolfi
Owen Gigg
Robert Dewitt / Anchor


# 1.7.5
2014-09-03
- Allow comments in keyframe (complete comment support coming in 2.0)
- pass options to parser from less.render
- Support /deep/ combinator
- handle fragments in data-uri’s
- float @charsets to the top correctly
- updates to some dependencies
- Fix interpolated import in media query
- A few other various small corrections
# 1.7.4
2014-07-27
- Handle uppercase paths in browser
- Show error if an empty selector is used in extend
- Fix property merging in directives
- Fix ordering of charset and import directives
- Fix race condition that caused a rules is undefined error sometimes if you had a complex import strategy
- Better error message for imports missing semi-colons or malformed
- Do not use util.print to avoid deprecate warnings in node 0.11
# 1.7.3
2014-06-22
- Include dist files, missing from 1.7.2
- Do not round the results of color functions, like lightness, hue, luma etc.
- Support cover and contain keywords in background definitions
# 1.7.2
2014-06-19
- Allow paths option to be a string (in 1.7.1 less started throwing an exception instead of incorrectly processing the string as an array of chars)
- Do not round numbers when used with javascript (introduced 1.7.0)
# 1.7.1
2014-06-08
- Fix detection of recursive mixins
- Fix the paths option for later versions of node (0.10+)
- Fix paths joining bug
- Fix a number precision issue on some versions of node
- Fix an IE8 issue with importing css files
- Fix IE11 detection for xhr requests
- Modify var works if the last line of a less file is a comment.
- Better detection of valid hex colour codes
- Some stability fixes to support a low number of available file handles
- Support comparing values with different quote types e.g. “test” now === ‘test’
- Give better error messages if accessing a url that returns a non 200 status code
- Fix the e() function when passed empty string
- Several minor bug fixes
# 1.7.0
2014-02-27
- Add support for rulesets in variables and passed to mixins to allow wrapping
- Change luma to follow the w3c spec, luma is available as luminance. Contrast still uses luma so you may see differences if your threshold % is close to the existing calculated luma.
- Upgraded clean css which means the –selectors-merge-mode is now renamed –compatibility
- Add support for using variables with @keyframes, @namespace, @charset
- Support property merging with +_ when spaces are needed and keep + for comma separated
- Imports now always import once consistently - a race condition meant previously certain configurations would lead to a different ordering of files
- Fix support for<EMAIL_ADDRESS>when called with no args (e.g. .mixin();)
- Do unit conversions with min and max functions. Don’t pass through if not understood, throw an error
- Allow % to be passed on its own to the unit function e.g. unit(10, %)
- Fix a bug when comparing a unit value to a non-unit value if the unit-value was the multiple of another unit (e.g. cm, mm, deg etc.)
- Fix mixins with media queries in import reference files not being put into the output (they now output, they used to incorrectly not)
- Fix lint mode - now reports all errors
- Fixed a small scope issue with & {} selector rulesets incorrectly making mixins visible - regression from 1.6.2
- Browser - added log level “debug” at 3 to get less logging, The default has changed so unless you set the value to the default you won’t see a difference
- Browser - logLevel takes effect regardless of the environment (production/dev)
- Browser - added postProcessor option, a function called to post-process the css before adding to the page
- Browser - use the right request for file access in IE
# 1.6.3
2014-02-08
- Fix issue with calling toCSS twice not working in some situations (like with bootstrap 2)
# 1.6.2
2014-02-02
- The Rhino release is fixed!
- ability to use uppercase colours
- Fix a nasty bug causing syntax errors when selector interpolation is preceded by a long comment (and some other cases)
- Fix a major bug with the variable scope in guards on selectors (e.g. not mixins)
- Fold in & when () { to the current selector rather than duplicating it
- fix another issue with array prototypes
- add a url-args option which adds a value to all urls (for cache busting)
- Round numbers to 8 decimal places - thereby stopping javascript precision errors
- some improvements to the default() function in more complex scenarios
- improved missing ‘{‘ and ‘(‘ detection
# 1.6.1
2014-01-12
- support ^ and ^^ shadow dom selectors
- fix sourcemap selector (used to report end of the element or selector) and directive position (previously not supported)
- fix parsing empty less files
- error on (currently) ambiguous guards on multiple css selectors
- older environments - protect against typeof regex returning function
- Do not use default keyword
- use innerHTML in tests, not innerText
- protect for-in in case Array and Object prototypes have custom fields
# 1.6.0
2014-01-01
- Properties can be interpolated, e.g. @{prefix}-property: value;
- a default function has been added only valid in mixin definitions to determine if no other mixins have been matched
- Added a plugins option that allows specifying an array of visitors run on the less AST
- Performance improvements that may result in approx 20-40% speed up
- Javascript evaluations returning numbers can now be used in calculations/functions
- fixed issue when adding colours, taking the alpha over 1 and breaking when used in colour functions
- when adding together 2 colours with non zero alpha, the alpha will now be combined rather than added
- the advanced colour functions no longer ignore transparency, they blend that too
- Added –clean-option and cleancssOptions to allow passing in clean css options
- rgba declarations are now always clamped e.g. rgba(-1,258,258, -1) becomes rgba(0, 255, 255, 0)
- Fix possible issue with import reference not bringing in styles (may not be a bugfix, just a code tidy)
- Fix some issues with urls() being prefixed twice and unquoted urls in mixins being processed each time they are called
- Fixed error messages for undefined variables in javascript evaluation
- Fixed line/column numbers from math errors
# 1.5.1
2013-11-17
- Added source-map-URL option
- Fixed a bug which meant the minimised 1.5.0 browser version was not wrapped, meaning it interfered with require js
- Fixed a bug where the browser version assume port was specified
- Added the ability to specify variables on the command line
- Upgraded clean-css and fixed it from trying to import
- correct a bug meaning imports weren’t synchronous (syncImport option available for full synchronous behaviour)
- better mixin matching behaviour with calling multiple classes e.g. .a.b.c;
# 1.5.0
2013-10-21
- sourcemap support
- support for import inline option to include css that you do NOT want less to parse e.g. @import (inline) “file.css”;
- better support for modifyVars (refresh styles with new variables, using a file cache), is now more resiliant
- support for import reference option to reference external css, but not output it. Any mixin calls or extend’s will be output.
- support for guards on selectors (currently only if you have a single selector)
- allow property merging through the +: syntax
- Added min/max functions
- Added length function and improved extract to work with comma seperated values
- when using import multiple, sub imports are imported multiple times into final output
- fix bad spaces between namespace operators
- do not compress comment if it begins with an exclamation mark
- Fix the saturate function to pass through when using the CSS syntax
- Added svg-gradient function
- Added no-js option to lessc (in browser, use javascriptEnabled: false) which disallows JavaScript in less files
- switched from the little supported and buggy cssmin (previously ycssmin) to clean-css
- support transparent as a color, but not convert between rgba(0, 0, 0, 0) and transparent
- remove sys.puts calls to stop deprecation warnings in future node.js releases
- Browser: added logLevel option to control logging (2 = everything, 1 = errors only, 0 = no logging)
- Browser: added errorReporting option which can be “html” (default) or “console” or a function
- Now uses grunt for building and testing
- A few bug fixes for media queries, extends, scoping, compression and import once.
# 1.4.2
2013-07-20
- if you don’t pass a strict maths option, font size/line height options are output correctly again
- npmignore now include .gitattributes
- property names may include capital letters
- various windows path fixes (capital letters, multiple // in a path)
# 1.4.1
2013-07-05
- fix syncImports and yui-compress option, as they were being ignored
- fixed several global variable leaks
- handle getting null or undefined passed as the options object
# 1.4.0
2013-06-05
- fix passing of strict maths option
# 1.4.0 Beta 4
2013-05-04
- change strictMaths to strictMath. Enable this with –strict-math=on in lessc and strictMath:true in JavaScript.
- change lessc option for strict units to –strict-units=off
# 1.4.0 Beta 3
2013-04-30
- strictUnits now defaults to false and the true case now gives more useful but less correct results, e.g. 2px/1px = 2px
- Process ./ when having relative paths
- add isunit function for mixin guards and non basic units
- extends recognise attributes
- exception errors extend the JavaScript Error
- remove es-5-shim as standard from the browser
- Fix path issues with windows/linux local paths
# 1.4.0 Beta 1 & 2
2013-03-07
- support for :extend() in selectors (e.g. input:extend(.button) {}) and &:extend(); in ruleset (e.g. input { &:extend(.button all); })
- maths is now only done inside brackets. This means font: statements, media queries and the calc function can use a simpler format without being escaped. Disable this with –strict-maths-off in lessc and strictMaths:false in JavaScript.
- units are calculated, e.g. 200cm+1m = 3m, 3px/1px = 3. If you use units inconsistently you will get an error. Suppress this error with –strict-units-off in lessc or strictUnits:false in JavaScript
- (~”@var”) selector interpolation is removed. Use @{var} in selectors to have variable selectors
- default behaviour of import is to import each file once. @import-once has been removed.
- You can specify options on imports to force it to behave as css or less @import (less) “file.css” will process the file as less
- variables in mixins no longer ‘leak’ into their calling scope
- added data-uri function which will inline an image into the output css. If ieCompat option is true and file is too large, it will fallback to a url()
- significant bug fixes to our debug options
- other parameters can be used as defaults in mixins e.g. .a(@a, @b:@a)
- an error is shown if properties are used outside of a ruleset
- added extract function which picks a value out of a list, e.g. extract(12 13 14, 3) => 14
- added luma, hsvhue, hsvsaturation, hsvvalue functions
- added pow, pi, mod, tan, sin, cos, atan, asin, acos and sqrt math functions
- added convert function, e.g. convert(1rad, deg) => value in degrees
- lessc makes output directories if they don’t exist
- lessc @import supports https and 301’s
- lessc “-depends” option for lessc writes out the list of import files used in makefile format
- lessc “-lint” option just reports errors
- support for namespaces in attributes and selector interpolation in attributes
- other bug fixes
# 1.3.3
2012-12-30
- Fix critical bug with mixin call if using multiple brackets
- when using the filter contrast function, the function is passed through if the first argument is not a color
# 1.3.2
2012-12-28
- browser and server url re-writing is now aligned to not re-write (previous lessc behaviour)
- url-rewriting can be made to re-write to be relative to the entry file using the relative-urls option (less.relativeUrls option)
- rootpath option can be used to add a base path to every url
- Support mixin argument seperator of ‘;’ so you can pass comma seperated values. e.g. .mixin(23px, 12px;);
- Fix lots of problems with named arguments in corner cases, not behaving as expected
- hsv, hsva, unit functions
- fixed lots more bad error messages
- fix @import-once to use the full path, not the relative one for determining if an import has been imported already
- support :not(:nth-child(3))
- mixin guards take units into account
- support unicode descriptors (U+00A1-00A9)
- support calling mixins with a stack when using & (broken in 1.3.1)
- support @namespace and namespace combinators
- when using % with colour functions, take into account a colour is out of 256
- when doing maths with a % do not divide by 100 and keep the unit
- allow url to contain % (e.g. %20 for a space)
- if a mixin guard stops execution a default mixin is not required
- units are output in strings (use the unit function if you need to get the value without unit)
- do not infinite recurse when mixins call mixins of the same name
- fix issue on important on mixin calls
- fix issue with multiple comments being confused
- tolerate multiple semi-colons on rules
- ignore subsequant @charset
- syncImport option for node.js to read files syncronously
- write the output directory if it is missing
- change dependency on cssmin to ycssmin
- lessc can load files over http
- allow calling less.watch() in non dev mode
- don’t cache in dev mode
- less files cope with query parameters better
- sass debug statements are now chrome compatible
- modifyVars function added to re-render with different root variables
# 1.3.1
2012-10-18
- Support for comment and @media debugging statements
- bug fix for async access in chrome extensions
- new functions tint, shade, multiply, screen, overlay, hardlight, difference, exclusion, average, negation, softlight, red, green, blue, contrast
- allow escaped characters in attributes
- in selectors support @{a} directly, e.g. .a.@{a} { color: black; }
- add fraction parameter to round function
- much better support for & selector
- preserve order of link statements client side
- lessc has better help
- rhino version fixed
- fix bugs in clientside error handling
- support dpi, vmin, vm, dppx, dpcm units
- Fix ratios in media statements
- in mixin guards allow comparing colors and strings
- support for -*-keyframes (for -khtml but now supports any)
- in mix function, default weight to 50%
- support @import-once
- remove duplicate rules in output
- implement named parameters when calling mixins
- many numerous bug fixes
# 1.3.0
2012-03-10
- @media bubbling
- Support arbitrary entities as selectors
- [Variadic argument support](https://gist.github.com/1933613)
- Behaviour of zero-arity mixins has [changed](https://gist.github.com/1933613)
- Allow @import directives in any selector
- Media-query features can now be a variable
- Automatic merging of media-query conditions
- Fix global variable leaks
- Fix error message on wrong-arity call
- Fix an @arguments behaviour bug
- Fix :: selector output
- Fix a bug when using @media with mixins
# 1.2.1
2012-01-15
- Fix imports in browser
- Improve error reporting in browser
- Fix Runtime error reports from imported files
- Fix File not found import error reporting
# 1.2.0
2012-01-07
- Mixin guards
- New function percentage
- New color function to parse hex color strings
- New type-checking stylesheet functions
- Fix Rhino support
- Fix bug in string arguments to mixin call
- Fix error reporting when index is 0
- Fix browser support in WebKit and IE
- Fix string interpolation bug when var is empty
- Support !important after mixin calls
- Support vanilla @keyframes directive
- Support variables in certain css selectors, like nth-child
- Support @media and @import features properly
- Improve @import support with media features
- Improve error reports from imported files
- Improve function call error reporting
- Improve error-reporting


| Home > Documentation > Developing > Tutorials > Developing Web services > Developing a JAX-WS POJO Web Service |
This tutorial will take you through the steps required in developing, deploying and testing a Web Service in Apache Geronimo. After completing this tutorial you should be able to understand how to develop simple JAX-WS compliant web services in Apache Geronimo using Eclipse development environment.
This application has a Java class which contains two functions, one which converts amount in Dollars to Rupees and the other which converts Rupees to Euros. We will expose these two methods as the services provided by our deployed Web Service.
We will also test the deployed web service by using the Web Services Explorer in Eclipse
For new users, Web Services can be created in two ways:
This tutorial will help you in creating a Bottom Up Web Service from a Java class which will be exposed as a Servlet to the client applications.
To run this tutorial, as a minimum you will be required to have installed the following prerequisite software.
Geronimo version 2.1.x, Java 1.5 runtime, and Eclipse Ganymede are used is used in this tutorial but other versions can be used instead (e.g., Geronimo version 2.2, Java 1.6, Eclipse Europa)
Details on installing eclipse are provided in the Development environment section. This tutorial will take you through the following steps:
Geronimo processes the annotations in source files and automatically generates the required artifacts to deploy the Web Service.
You can see the Geronimo created files in the directory <INSTALL_DIR>/repository/org/apache/geronimo/samples/jaxws/jaxws-converter/1.0/jaxws-converter-1.0.car/. At this location you can find a new directory which Geronimo created for deploying the web service which contains the WSDL file and other required stubs.
Geronimo has a built-in plug-in named jaxws-tools which provides tools for generating WSDL and other necessary files used in JAX-WS web services. The plug-in relies on Sun's wsgen and wsimport tools to generate the web services artifacts. Please see wsgen or wsimport documentation for more information.
This completes the process of deploying the web service to Geronimo and testing it. You can also refer to the following tutorial to develop a actual client for a web service that is already deployed on Geronimo Developing Clients for a JAX-WS Web Service.
| Bookmark this on Delicious Digg this | Privacy Policy - Copyright © 2003-2013, The Apache Software Foundation, Licensed under ASL 2.0. |


|
real_time_tools
|
Program: test the real time capabilities of a machine. More...
#include "real_time_tools/realtime_test.hpp"
#include <signal.h>
#include <atomic>
#include <memory>
#include "real_time_tools/realtime_check.hpp"
#include "real_time_tools/spinner.hpp"
#include "real_time_tools/thread.hpp"
#include "shared_memory/shared_memory.hpp"
Classes | |
| class | Configuration |
| Configuration of the test thread. More... | |
| class | Computation |
| Abstract interface for some different thread computation. More... | |
| class | Matrix_computation_no_eigen |
| Some specific computation based on matrix multiplication. More... | |
Functions | |
| void * | thread_function (void *v) |
| This is the real time thread that perform the check and the computations. | |
| void | print_usage () |
| Display the usage in case of a miss-use. More... | |
| bool | set_config (int nb_args, char **args, Configuration &config) |
| parse the input argument and configure which conputation should be done | |
| void | clean_memory () |
| Delete the shared memeory. | |
| void | stop (int) |
| stop the current thread. More... | |
| int | main (int nb_args, char **argv) |
| This program evaulate the quality of the frequency tracking by a real time thread. More... | |
Variables | |
| static int | MATRIX_COMPUTATION_NO_EIGEN_64 = 1 |
| valid modes, creating subclasses of Computation to add new ones (see below) | |
| std::atomic< bool > | RUNNING |
| Is the thread running? | |
Program: test the real time capabilities of a machine.
| int main | ( | int | nb_args, |
| char ** | argv | ||
| ) |
This program evaulate the quality of the frequency tracking by a real time thread.
| void print_usage | ( | ) |
Display the usage in case of a miss-use.
| void stop | ( | int | ) |
stop the current thread.
This method is called throw a "ctrl+c"


You'll have to fill some question blocks about your body
Than you will be able to watch this data in dynamics and retrieve
a lot of helpful analytics and statistics


Programmable Multilevel Interrupt Controller
Defines |
| #define | pmic_enable_low_lvl_int() pmic_write_reg8(CTRL, pmic_read_reg8(CTRL) | PMIC_CTRL_LOLVLEN) |
| | Enable low level interrupts.
|
| #define | pmic_enable_medium_lvl_int() pmic_write_reg8(CTRL, pmic_read_reg8(CTRL) | PMIC_CTRL_MEDLVLEN) |
| | Enable medium level interrupts.
|
| #define | pmic_enable_high_lvl_int() pmic_write_reg8(CTRL, pmic_read_reg8(CTRL) | PMIC_CTRL_HILVLEN) |
| | Enable high level interrupts.
|
| #define | pmic_disable_low_lvl_int() pmic_write_reg8(CTRL, pmic_read_reg8(CTRL) & ~PMIC_CTRL_LOLVLEN) |
| | Disable low level interrupts.
|
| #define | pmic_disable_medium_lvl_int() pmic_write_reg8(CTRL, pmic_read_reg8(CTRL) & ~PMIC_CTRL_MEDLVLEN) |
| | Disable medium level interrupts.
|
| #define | pmic_disable_high_lvl_int() pmic_write_reg8(CTRL, pmic_read_reg8(CTRL) & ~PMIC_CTRL_HILVLEN) |
| | Disable high level interrupts.
|
Detailed Description
The Programmable Multilevel Interrupt Controller (PMIC) is available on the XMEGA devices. All peripherals can define three different priority levels for interrupts; high, medium or low. Medium level interrupts may interrupt low level interrupt service routines. High level interrupts may interrupt both low and medium level interrupt service routines. Low level interrupts have an optional round robin scheme to make sure all interrupts are serviced within a certain amount of time.
An interrupt level (low, medium or high) must be enabled in the PIMC, in addition to the global interrupt enable and the interrupt enable in the peripheral itself, before an interrupt of that level is able to trigger the according interrupt service routine.
To enable the interrupt in the peripheral itself, the desired interrupt level must be configured in the peripheral. According defines for the different levels are also available in this driver (e.g. for low level interrupt use PMIC_INTLVL_LOW).
Define Documentation
| #define pmic_disable_high_lvl_int |
( |
|
) |
pmic_write_reg8(CTRL, pmic_read_reg8(CTRL) & ~PMIC_CTRL_HILVLEN) |
Disable high level interrupts.
Definition at line 96 of file pmic.h.
| #define pmic_disable_low_lvl_int |
( |
|
) |
pmic_write_reg8(CTRL, pmic_read_reg8(CTRL) & ~PMIC_CTRL_LOLVLEN) |
Disable low level interrupts.
Definition at line 88 of file pmic.h.
| #define pmic_disable_medium_lvl_int |
( |
|
) |
pmic_write_reg8(CTRL, pmic_read_reg8(CTRL) & ~PMIC_CTRL_MEDLVLEN) |
Disable medium level interrupts.
Definition at line 92 of file pmic.h.
| #define pmic_enable_high_lvl_int |
( |
|
) |
pmic_write_reg8(CTRL, pmic_read_reg8(CTRL) | PMIC_CTRL_HILVLEN) |
Enable high level interrupts.
Definition at line 84 of file pmic.h.
| #define pmic_enable_low_lvl_int |
( |
|
) |
pmic_write_reg8(CTRL, pmic_read_reg8(CTRL) | PMIC_CTRL_LOLVLEN) |
Enable low level interrupts.
Definition at line 76 of file pmic.h.
| #define pmic_enable_medium_lvl_int |
( |
|
) |
pmic_write_reg8(CTRL, pmic_read_reg8(CTRL) | PMIC_CTRL_MEDLVLEN) |
Enable medium level interrupts.
Definition at line 80 of file pmic.h.


MEAN-Stack Test Project
{{ location.length }}
{{err_msg}}
User ID
User Name
Min distance
Max distance
Picture
{{imageFileName}}
A size of image must be small than 100kb.
Add
#
ID#
User ID
User Name
Min Distance
Max Distance
Action
{{row._id}}
{{row.user_id}}
{{row.user_name}}
{{row.min_distance}}
{{row.max_distance}}


Since the OBC is such as a computer, the components to size are everything about calculation power and memories. The ROM, the RAM, the OS, the microcontroller, but also the communication protocol have to be size.
The microcontroller will run on 3.3 V to save power consumption and to fit with other CubeSats experiments.
The number of bit of the processor will have an impact on the power consumption and the efficiency for the calculation. A 8-bit processor will consume less while a 32-bit processor will have a better efficiency. Nevertheless, the new generation of 32-bit processor are low power consumption and could be used in CubeSat's architecture.
The Random Access Memory (RAM) has to be able to keep working without damage its data under radiation and high temperature. We chose to implement the OBC and the ADCS on the same electronic card to save space. For this, the RAM must meet the OBC and ADCS modules needs. We consider all program data for the two modules will need no more than 4MB.
A static RAM, or SRAM, will be used on the board since it consume less power.
The ROM used will be both flash memory and EEPROM. The Flash memory to store programs and data and the EEPROM to hold the program that would be launched if the OBC has to shut down due to energy/malfunction issues.
A big number of OS exists for embedded systems. But, for CubeSats, there is only two different OS mainly use. FreeRTOS and Salvo.
OnBoard Computer for Pico Satellite
Design and Development of an ADCS OBC for a CubeSat By Pieter Johannes Botma


What is Pair Programming?
Pair programming is collaborative effort to take on a problem with two people. It frees up brain energy to concentrate on a specific part of the challenge.
Why is Pair Programming important to Dev Bootcamp
Pair programming is important because it forces us to grow as a pair in trying challenges outside of our comfort zone. It creates an environment for us to point out and fix loop holes that we would have not seen working indiviually.


Hello,
We are writing to you on behalf of the ${ALL_OF_US} Research Program’s Researcher Workbench
Support team. A workspace you own titled
'${WORKSPACE_NAME}' (${WORKSPACE_NAMESPACE}) has been
flagged by the ${ALL_OF_US} Research Program’s Resource Access Board (RAB) as potentially in
violation of
program policies.
The reason this workspace was flagged is the following:
As the RAB continues to review your workspace,
we are requesting that you take action to
sufficiently address the concern above within the next two weeks. Once you have made the
requested revisions, please email ${RAB_SUPPORT_EMAIL} to confirm. Failure to address the issue
may result in permanent removal of the workspace.
The following restrictions will be placed on your workspace while it is flagged:
- The data builder, analyses tab will be frozen out
- Current workspace actions will be disabled
- Cannot duplicate or clone a workspace
- Cannot copy artifacts out of the workspace into other workspaces
- Cannot delete a workspace
- Cannot download a workspace
- Cannot share a workspace
- The ‘about (e.g., workspace description)’ tab can still be edited
- All data in the workspace will be preserved as it was prior to freezing
If you have any questions about the decision to freeze your workspace and the next steps that
are needed from you, please contact the ${ALL_OF_US} Resource Access Board at
${RAB_SUPPORT_EMAIL}. Thank you for your understanding and patience.
Best,
The ${ALL_OF_US} Researcher Workbench Support Team


About Me
I am a student at The National Institute of Engineering and I am from of Computer Science Branch.
Being an engineering student I have come across many technical and non-technical skills. Some are, working of Operating systems, Computer Networks, Digital networks, the general design of Compiler, and the design of microprocessors. To stay updated on the current world trend I have worked on C, CPP, Python, javascript, MySQL, Java, HTML, CSS, XML, and embedded C for Arduino.
I have done many projects that include Line following robot, Bluetooth controlled armed robot. Construct-O-Bot (e-yantra competition), Project management system(College project), and some of the android app to know their working.
I am interested in many fields. Some are front-end design and animation, back-end design, image processing, data analysis using machine learning, Robotics, and many more.
I am an enthusiast who wants to expand the knowledge and skills to be a successful entrepreneur in the future. I believe in “knowing things by working on them” and not by “working on things by knowing them”. I can work in any field with full potential until I know the full depth of the concept.


Quote: Posted 11/29/04 03:46:28 (GMT) -- highlife262626
If that's the case then it should follow like this:
Lvl 10 = +5
Lvl 15 = +6
Lvl 20 = +7
Lvl 25 = +8
The character I made had 26 levels and it was getting +11. Where did the other +3 come from?
Quote: Posted 11/29/04 04:18:04 (GMT) -- highlife262626
Ahhh, once again my failure to pay attention to detail is my undoing. DOH! Thx for beating it into my head Anuis. =:P


* Parts of this Text were directly taken and tweaked from Botman's
explanations *
(Lazyness took me again and Botman is better than me in explaining
things)
* V1.2 Waypoint Makers please read:
If you previously did some waypoints for POD-Bot you will
notice some
differences. First, you are now allowed to have connections between
8 Waypoints at the same time (was 4 before). Also the Wayzone Radius
gets calculated instantly now when placing a waypoint (makes "wayzone
calcall" somewhat obsolete). And even more important you should
now do
lots of waypoints since the Bots will try to to vary them. Also try
to
place waypoints at Places where you would like them to take cover (see
below for a more lengthy explanation).
First, before starting to do waypoints because you desperately
need them for a custom map you want to play you better check here if
they weren't already done by someone else:
http://www.nuclearbox.com/podbot/downloads.shtml
1. Waypoints, what are they ?
Waypoints are locations in the maps that the bots will
use when navigating.
They allow the bot to roam about the map without having to blindly bump
into
walls. Waypoints can be thought of like the bread crumbs in the Hansel
and
Gretel story. They are something marking a path to make it easier to
follow.
The waypoints are not displayed while the game is being played. The
bots
"know" which way to go by following the path laid out by these
waypoints.
In order to get the bots to cover the entire map when
playing the game,
waypoints should be laid out all over the map. Without the waypoints
the
bots will just randomly run around and will tend to stay in the same
area.
Waypoints also allow the bot to know where specific goals are in the
game.
You couldn't play capture the flag unless you knew where the flag was
and
where the flag needed to be taken after being captured. Waypoints are
what
makes all of these things possible. Bots with sufficiently advanced
waypoint
information and algorithms would be able to find the shortest distance
between points in the map and navigate from their current position to
some
goal on the other side of the map.
This document describes the commands needed to create
or edit a waypoint
file (to be used with POD-Bot). When creating or editing a waypoint
file it is best NOT to have any bots wandering around at the
same time.
Create a LAN game, and join the game then start laying out waypoints
for
a map. Save the waypoint file, disconnect from the server, then start
the
game again, this time with the bots to see how well (or poorly) they
follow
the waypoints you have created.
2. What do waypoints look like in the map ?
The waypoints are displayed using vertical lines that
look like lightning or
electric streams. The vertical line used to draw the waypoint is the
same
height as the player. The point in space at the center of this vertical
line
is what is actually used as the waypoint. Different Types of waypoints
have
different colors.
Waypoints are stored in a file with the same name as the
map file name but
using the extension ".pwf" instead of the map file
extension of ".bsp". For
example, the waypoint file for the map de_dust would be de_dust.pwf.It
will be
stored in the Half-Life\cstrike\PODBot folder and then in the folder
you specified
with wptfolder (defaults to "WPTDefault").
Waypoint files are automatically loaded when the map is loaded (if they
exist). If the waypoint file does not exist, you will need to create
it
using the directions contained in this document.
3. Waypoint console commands Summary
The following Waypoint commands are available (note these
ARE case sensitive):
"waypoint on" - Turns on displaying of
waypoints.
"waypoint on noclip" - Turns on waypoint editing with
noclip cheat. This allows you
to fly and you don't collide with walls. Useful for doing swim waypoints.
"waypoint off" - Turns off displaying of all waypoints.
"waypoint add" - Adds a waypoint at the current player
location. A Menu will pop
up where you have to select the different types of waypoints
"waypoint delete" - Deletes the waypoint nearest to
the player (see below).
"waypoint find x" - Shows you the Direction to a specific
Waypoint Nr. x
"waypoint showflags" - Shows all of the Flags which
are set manually on this waypoint
"waypoint addflag" - Allows you to manually add Flags
to a waypoint.
"waypoint delflag" - Let's you select a waypoint flag
to delete
"waypoint setradius x" - Manually sets the Wayzone
Radius for this waypoint to
Value x
"waypoint stats" - Shows the number of different waypoints
you did already set.
"waypoint check" - Checks if all Waypoints are valid
(automatically done when saving them too)
"wayzone calcall" - Calculates the Wayzone Radius for
all Waypoints in the Map. (obsolete now since V1.3 because wayzones
are automatically set when a waypoint is created)
"waypoint save" - Saves the current waypoint list to
a file (with Waypoint & Path Checking)
"waypoint save nocheck" - Same as above but forcing
tosave even if they are full of errors..
"waypoint load" - Loads the waypoint list from a waypoint
file (and initialises all Datas).
"autowaypoint" - Displays the status of the autowaypoint
setting.
"autowaypoint on" - Turns on autowaypoint setting.
"autowaypoint off" - Turns off autowaypoint setting.
"pathwaypoint" - Displays the status
of the pathwaypoint setting.
"pathwaypoint on" - Turns on the pathwaypoint setting
(see below).
"pathwaypoint off" - Turns off the pathwaypoint setting.
"pathwaypoint add x" - Connects the nearest Waypoint
to you, with the
waypoint whose number specified with Value x.
"pathwaypoint delete x" - Disconnects the nearest Waypoint
to you, with the
waypoint whose number specified with Value x.
"debuggoal x" - Forces Bots to use Waypoint
Nr. x as a Destination Waypoint
To use the waypoint commands, you will have to use the console. You
must
start the game with the console option enabled (use "hl.exe
-console" in
the Target: line of a shortcut or use "Half-Life Console"
in your SIERRA
menu from the Windows Start button). Use the '~' key to bring down the
console. Enter the console commands that you wish, then use the '~'
key
again to return to the game.
You can make things easier by binding console commands
to keys on the
keyboard. Just type "bind" followed by the key you want to
bind to,
followed by the console command. You will have to use double quotes
on the console command if it's more than one word. Here's an example
of console commands that I use when editing waypoints...
bind a "waypoint add"
bind d "waypoint delete"
bind l "waypoint load"
bind w "waypoint save"
The 'a' key will manually add a waypoint. The 'd' key
will delete a waypoint.
The 'l' key will load the most recently saved waypoint file (useful
if you
have added some waypoints but don't want to save them and want to go
back to
the previously save waypoint list, sort of like an "undo").
The 'w' key (for
"write waypoints") will save the list of waypoints to the
waypoint file. I
tried using 's' (for "save waypoints"), but I kept hitting
's' by mistake when
I wanted to add or delete a waypoint.
Using "waypoint add" will place a waypoint
at the location that the player is
currently at in a map. Waypoints can be placed anywhere the player can
go.
When placing a waypoint, you will hear a sound to indicate that the
waypoint has been dropped (the sound is the same sound the crossbow
bolt makes when striking an wall).
You then have to specify the Type of waypoint you want to place here.
"Normal Waypoint" sets a Waypoint which
is used for normal walking from one
point to each other. From V1.4 on you should place lots of them (but
still caring for some distance between them), since the
Bots use them for hiding and varying their paths. Color is green.
A Standard Normal Waypoint
"Terrorist Important Waypoint" and "Counter
Important Waypoint"
These are strategical waypoints for that team. Bots use these waypoints
to patrol the map. How they use this, heavily depends on the map type.
In a DE Map you should place a lot of Counter Waypoints around the
Bomb Plant Zone and only 2 or 3 strategical waypoints for Terrorists.
On a DE Map Counter Bots will most of the time pick a Counter Waypoint
as
a destination and only sometimes pick a Terrorist waypoint. Terrorists
are allowed to pick any of them as a goal waypoint. This behaviour changes
with the maptype, in a CS map for example it is vice versa.
It helps to think of the important waypoints like strategical positions
in a sports game. Imagine the team which defends the Map Goal is the
'Home Team' and the other one is the 'Away Team'. Now you need to have
more important waypoints for the Home Team, because the Away Team will
go for them anyway. On a DE Map the CT Team is the Home Team, on a CS
& AS Map the Terrorist Team is the Home Team. The average number
of 'Home Team' Important Waypoints should be about twice as much as
the the important waypoints for the 'Away Team'. Terrorists WP Color
is red, Counter Waypoints
are blue.
A Terrorist Important Waypoint
A Counter-Terrorist Important Waypoint
"Ladder Waypoint"
These need to be placed on a ladder if you want the Bots to climb it.
Set the bottom waypoint at a position where you're already "stuck"
to the
ladder. At the top of the ladder you should place another ladder waypoint.
Set this at a position where you can hardly look ever the edge. If the
ladder
is quite a long one, you might want to place another ladder waypoint
in
between the other ones. In most cases you need to connect the waypoints
manually by using pathwaypoint (see below). If there is no connection
between the waypoints the Bots won't climb the ladder ! Color is purple.
A ladder waypoint
"Rescue Waypoint"
This is only needed on Hostage Maps. It's the location where you want
the CT Bots to rescue the hostages. Usually only 1 is needed (depending
on how much Rescue Zones there are it might be more).. Color is white.
A Rescue Waypoint
"Goal Waypoint"
Place this at a position where Goals of the Map need to be achieved.
In DE
maps this is a bomb plant spot and on cs maps Counter look here to rescue
some hostages. In AS maps these are the Escape points for the VIP. Color
is
purple like ladder waypoints.
A Goal Waypoint
"Campstart Waypoint"
This is a camping (or sniper if you prefer) waypoint. To place it, look
into
the direction you want the Bot to start looking at when camping. To
let him
crouch at that position just press the duck button while adding it.
You also
need to specify the:
"Campend Waypoint"
Selecting this will set the end direction for the Bot to look at when
camping.
Look straight into the direction where you want the Bot to look and
select it.
Note: you can't set a campend waypoint before doing a campstart waypoint.
Normal Color is cyan, if you made it team specific it will have a touch
of red
if Terrorist WPT or blue if CT.
A Camp Waypoint where the Bot will duck while
camping
"Jump Waypoint"
This is the very first of the upcoming learning Features in POD
(I'm planning on extending this a lot). By selecting it, your moves
will be monitored and if you jump, a normal waypoint will be placed
at the position you started to jump and another will be placed where
you landed. The Waypoint Type as said before is a standard waypoint
but a red connection line will show you that there is a jump connection
between the two. You can also create jump connections between already
existing waypoints, just make sure you're in the near of the first when
jumping and land in the near of the destination waypoint. Note that
this will adjust the waypoints origin on the average position of the
previous position and your jump position. You can even have the Bots
jump to a ladder or do several jumps after each other !
Waypoints connected with a Jump Connection
*NOTE*
To set a crouch waypoint, just keep holding your duck key. You
certainly
noticed, I don't have different paths for different teams. I removed
team
specific paths, since the Bots should be free (IMHO) to walk everywhere
and
I secretly hated to to do waypoints for every team.
Using "waypoint delete" will remove the waypoint closest
to the player. The
waypoint MUST be within 40 units from the player (about 1/2 the player
height)
in order to be removed. You will need to stand fairly close to the waypoint
to be able to remove it. This prevents you from accidentally removing
a
waypoint on the other side of the room. When removing a waypoint you
will
hear a sound indicating that the waypoint was removed (the same sound
the
tripmine makes when placed on a wall).
"waypoint addflag/deleteflag" gives you
some additional options for waypoints.
The first, "blockwithhostage" is rarely used. If you
set this flag on a
waypoint Bots won't take this waypoint if a hostage is following them.
With the other two, you can make a campwaypoint team-specific.
Using "waypoint save" will save the waypoint
data to the waypoint file. Before saving (if you didn't add the 'nocheck'
argument, the Waypoints and Paths will be checked for major mistakes
and if something is wrong you'll be told so and nothing will be saved.
During the checking time CS freezes and depending on the speed of your
computer it could easily last for a minute. Don't worry your computer
hasn't crashed !
Waypoint files will have the same name as the current map with an extension
of ".pwf". The file will be saved into the "cstrike/PODBot"
Folder. Your
current player name will be saved as the waypoint file creator.
Using "waypoint load" will clear out
all waypoints in the current map and
load them from the waypoint file in the maps folder. This is a good
way
to "undo" a bunch of waypoints that you have created but do
not wish to
save. There is no way to "undo" a single waypoint. You will
have to use
the "waypoint delete" command to remove waypoints one-by-one.
The "autowaypoint" command allows you to automatically
drop waypoints as
you run around in a map. To turn autowaypointing on use "autowaypoint
on".
As you run around the level waypoints will be dropped every 200 units
automatically. No waypoint will be dropped if another waypoint is already
within 200 units of your current position. So if you want to place lots
of waypoints fairly close together you may have to manually place some
of
the waypoints using the "waypoint add" command. Autowaypointing
keeps
track of where the last waypoint was dropped (either manually or from
autowaypointing) and will place another waypoint when you are 200 units
from the last waypoint. If you don't like where autowaypointing placed
a waypoint and want to move it a little bit, you can delete the waypoint
using "waypoint delete" (but turn off autowaypointing before,
since it
will place a new waypoint otherwise).
When using autowaypointing, try to stay in the center
of narrow hallways
and always place a waypoint on BOTH sides of a door. You may have to
place
some of these waypoints manually using "waypoint add"
since places like
intersections of hallways and doorway entrances and exits don't usually
fall exactly at the location where autowaypoint would want to place
a
waypoint.
Don't use autowaypointing for locations like ladders or jumps !
The "pathwaypoint" command allows you
to display what the bots would consider
to be a valid path from one waypoint to other waypoints. Turn pathwaypoint
on using "pathwaypoint on" and whenever you get close
to a waypoint
yellow or white lines will be drawn to all of the other waypoints that
the bot
would consider to be "reachable". If the connection is a two-way
connection the
line is yellow, one-way connections appear white. These "reachable"
waypoints
would be waypoints that are clearly visible from the current location.
Certain
waypoints will be disallowed as reachable for one reason or another.
For
example, waypoints suspended in mid-air above the bot would not be considered
reachable since the bot couldn't jump high enough to get to them. Also
waypoints that are too far away from the current location would not
be
considered reachable. You may have waypoints that are close enough to
each
other, but across a wide gap that would be too wide to jump. If the
far
waypoint is close enough and clearly visible, it would still show as
"reachable" since I currently don't have a method to determine
if the bot
can get to that waypoint or not.
The bots will ONLY move from one waypoint to another
if there is a path between
them. Get in the habit of turning on the pathwaypoint setting when creating
waypoint files so that you can see the waypoint paths and will know
whether
or not a path exists between two waypoints. Also get in the habit of
checking
that paths exist BOTH WAYS between waypoints. Just because a
path is drawn
from point A to point B, doesn't mean that a path exists from point
B to
point A.
The "pathwaypoint add <waypointnr>"
command allows you to
manually assign a path between 2 waypoints. This is needed in some cases
where the waypoints are blocked (by doorways or other objects) and you
wish
to create a path between these waypoints. Also ladder waypoints need
to be
manually connected most of the time. Move close to the waypoint you
wish the path to start from and use the "pathwaypoint add x"
command.
Of course the "x" must be replaced by a valid waypoint number.
The actual
Waypoint Number you're standing on, will be shown in the upper corner
of your
HUD (if you turned pathwaypoint on).
For example to manually assign a path between Waypoint Nr. 250 and 251,
you first should stand in the near of Waypoint Nr. 250. Then type in:
"pathwaypoint add 251" and it will get connected.
You should now see a white waypoint path
line being draw from the start waypoint to the end waypoint. Note that
this
is a ONE-WAY connection. If you wish to create a path back in
the other
direction you will have to start with the second waypoint and end the
path
back at the first waypoint.
 This is necessary in some cases
where
you may have a door that opens from one side and allows you to go through
but once the door closes you can't go back through the other way.
When adding waypoints use the pathwaypoint feature to
verify that waypoints
are actually reachable. Sometimes you add a waypoint and it appears
close
enough and it also appears to be in plain sight, but the Half-Life engine
doesn't indicate that the waypoint is "reachable".
Be sure to check this in BOTH directions when defining a waypoint
path.
Usually you don't have to be too careful about waypoint
placement, but in some situations, you may have to spend more time carefully
laying out waypoints to get them to be "reachable" (ladders
are a good
example).
To set crouch waypoints, simply crouch when adding the
waypoint. You will
notice that the waypoint line is shorter than a normal waypoint. Bot
will
crouch automatically when approaching a crouch waypoint (if it's not
a
camping waypoint).
Try placing waypoints at intersections in hallways (do
use some
"important" waypoints at crossings). Try not to place waypoints
in
places where the bots would bump into corners of walls or other obstacles
when trying to get from one waypoint to the next. Remember the bots
won't
always take what you consider to be the "obvious" choice when
choosing the
next waypoint. Try to limit the choices that they have to keep them
from
heading off in the wrong direction. Also remember that the Bots could
go
backward in a fight and might not find a waypoint. In that special case
they wouldn't find a near enough waypoint (they only search in-between
200 Units) and get stuck forever. Since V1.4 it's important to have
a lot
of waypoints together to allow the Bots a wider choice. Also put some
waypoints in corners or behind walls/doors so they can take good cover
positions. The Bots will try to take cover at waypoints
- not seen by the enemy and
- the one with the smallest wayzone radius in their range
4. What are the Wayzones ?
Bots will pick a point inside this radius for their destination
origin (based
on things like orientation etc.), this just makes movement not that
"static".
Ladder waypoints, camp waypoints and goal waypoints will always have
a radius
of 0. Don't try to change it ! After POD-Bot calculated all Zones you
should
walk all over your waypoints to verify that they are reachable within
their
radius. Try to be careful with the radius. If your path bends around
corners
it's better to lower the radius. You should set the radius to 0 if the
Path
goes through some narrow doorways or similar. You manually assign a
new value
by standing near to the waypoint and typing "waypoint setradius
x". Where x
is the value you want to assign. Valid ranges are 0-128. The bigger,
the wider
it is. You'll also notice, if you turned on pathwaypointing some lines
will
show you the radius of the actual waypoint (if it's not 0).
Some Tips & Tricks when creating waypoints:
I start by typing "waypoint on". After that I type
"autowaypoint on" and
"pathwaypoint on". Then I try to cover the map with
waypoints everywhere
I want the Bots to roam (except for ladder waypoints) and manually adjust
wayzone radii which aren't appropriate . After this I try to think of
the important points for each team. I move to that position, delete
the "normal" waypoint and instead set a strategical waypoint
at that position. Then I place the goal waypoints, rescue waypoints
(if needed) and ladder waypoints. Then I do a lot of test playing and
checking with 'debuggoal' until I'm finally satisfied with all of the
movement.
When saving and there are errors, the waypoint number with the error
will be shown to you. Use 'waypoint find x' where x is the number of
the waypoint you want to find. Green Beams will then show you the direction
to the waypoint if you previously turned on pathwaypoints. Type
'waypoint find -1' to turn it off. Another useful command for testing
waypoints is the debuggoal command. If you want to check out if Bots
will make it through a difficult route, save the waypoints, then load
them again and type debuggoal x, where x is again the number of the
waypoint. you want the Bot to reach. After that add 1 Bot to your team
and watch him move to that waypoint. Be sure to turn it off again for
real playing because otherwise all of the Bots would take this waypoint
as a goal.
There's no waypoint for shooting breakables. The Bots will automatically
shoot them if it's blocking their way, just make sure that the path
connection goes right through the breakable. There's also no button
waypoint. If a Bot sees a Button he will randomly try to press it. If
you want to make sure that the Bot uses the Button you could do tricky
waypoint connections leading towards the button.
Some common newbie mistakes:
Picture 1 - Placing unnecessary waypoints
The waypoint in the middle of the window was probably set with the
intention to help the Bot with navigating through it. However it results
in the opposite. If the Bots have a clear Line of Sight to another waypoint
they assume there won't be any obstacle in the way. It would be better
to delete the waypoint in the window and just connect the waypoint in
front of the window with the one behind it.
Picture 2 - not fitting Wayzones
Look at that biiig wayzone assigned to this waypoint. If a Bot tries
to walk over this foot-bridge he will almost 100% fall down into death
because he would think even the free space beside it is walkable. For
precise movement a wayzone radius of 0 should be assigned instead.
Picture 3 - No connections between Waypoints, bad ladder waypoints
First, the connection from the normal waypoint isn't the best. It is
better to have the angle of approach set in a more straight angle. But
the really bad error is that there's probably no connection from the
ladder waypoint to the normal waypoint above. Let's take a look down
from the upper waypoint:
Yes. It's even worse. There's a one-way connection from the upper waypoint
to the ladder waypoint (at an angle where the Bot won't use the ladder
resulting in broken legs), there's no connection from the ladder waypoint
to the top and worst of all would be the only Path Bots could take to
reach this position. Playing with such waypoints would result in Bots
circling around a single waypoint just because the waypointer forgot
about connecting them. Simply manually connecting the ladder waypoint
with the top waypoint would get rid of the problem.
Picture 4 - Wrong Placement of Important Waypoints
Now look at this. Isn't it funny how peacefully the Terrorist Important
Waypoint, the CT Important Waypoint and the Normal Waypoint co-exist
at the same place ? NO, it's not!
This map - cs_galleon - is a hostage map where the Terrorist Team
starts on the ship and the Counter-Terrorists Team spawn somewhere else
outside the ship. Having both of the Important Points at the same place
screws up all tactical reasoning the Bots do and will just result in
Deathmatch Gameplay (if there even will be gameplay then). So the CT
Important Waypoint should be deleted and be recreated at the CT Spawn
Area or in the near of it. In addition the CT Waypoint and the normal
waypoint are much to close together. More about this below...
Picture 5 - Bad approach angles for Ladder Waypoints
The normal waypoint in the front is connected with the ladder waypoint
in the background at an angle that the Bots will almost everytime run
either into the back of the ladder or collide with the side of it. To
make it even worse the normal waypoint on the right is also connected
with the ladder waypoint (you can't see it on the picture) so the Bots
will get stuck everytime they want to use the ladder (they don't know
how to manoever around backsides of ladders).. Luckily there is a button
at the left of the picture so if the Bot heads off to press it, there's
a chance he will approach the ladder from a better side. The problem
could easily be solved by deleting the connection from the waypoint
on the right side to the ladder and by moving the front waypoint a short
distance to the left.
Picture 6 - Waypoints too close together
Besides that two waypoints at this close distance are absolutely unnecessary,
it will slow down the Bot (because of the higher amount of waypoints)
and furthermore will do no good to the Bots Navigation and Collision
Avoidance. I'll try to explain:
The Bots have a hardcoded radius inside my DLL where the Bot thinks
he reached this precious waypoints. It differs between types of waypoints,
to stay at the example picture normal waypoints are considered to be
reached when the Bot is inside a radius of 50 Units from the center
of the waypoint. To see what I mean with 50 Units you could set a waypoint
to a 50 Unit Wayzone by typing 'wayzone setradius 50'. Now in the example
picture the distance between the 2 waypoints is way below it, at a rough
guess I would say 16 Units. So what ? If the Bot reaches Waypoint Nr.
1, he automatically thinks (in the same frame) he has reached Waypoint
Nr. 2 without any movement which obviously is bad for precise movement.
Furthermore I'm post-processing the paths of the Bots so when 2 Bots
have the same waypoint as a goal I try to find alternative waypoints.
So if a colliding Bot #1 wants to reach Waypoint Nr. 1, Waypoint Nr.
2 will be a assigned to Bot #2 which leads to the Bots getting stuck
in each other very often. Avoid something like this at all costs!
Picture 7 - No Waypoints at all !
I can imagine looking at this scenario that the waypointer thought
something like this: "Oh well, these Bots are waypointed and I
don't want them to move here so I just don't set waypoints here and
everything's fine". This is wrong! It's true that POD-Bot
uses waypoints for basic movement so the Bots normally should never
reach this position in their normal navigation. But it's totally different
when engaged in combat ! If a Bot is attacking/fleeing an enemy he doesn't
use waypoints but uses an unwaypointed navigation like Realbot for example.
So it could easily be the case that a Bot is engaged at a position where
waypoints are available, moves backwards while fighting the enemy, finally
kills his enemy and stands at the position where I took the screenshot.
Now the Bot wants to switch back to waypointed movement but can't find
a waypoint in the near distance and is stuck forever again. So a basic
rule would be to place waypoints even in areas where you doubt a Bot
will ever move to, you never know what could happen in combat!
Phew ! I hope I didn't miss anything. Remember: the better
the waypoint file,
the more fun it is to play with the Bots ! If they are stuck somewhere
on
a map, it's usually the fault of the waypoint file creator...
If you've got questions not answered here, please use
the waypoint forum at nuclearbox:
http://www.nuclearbox.com/ubb/cgi-bin/ultimatebb.cgi?ubb=forum&f=5
Happy Waypointing !
|


{% extends 'layout-newia.html' %} {% block pageTitle %} Mental Health {% endblock %} {% block beforeContent %} {% endblock %} {% block content %}
Mental health problems are as common among students as they are in the general population.
But it's not just students with a diagnosed mental health condition who can benefit from counselling.
Anyone who has new challenges as a student could benefit from talking to someone. This includes if you have:
Counselling can help you understand these issues and suggest strategies for dealing with your feelings.
It's important to tell someone how you feel as this may bring an immediate sense of relief.
You could speak to a:
A tutor may also be able to help you get in touch with university or other counselling services.
Many colleges and most universities have a free and confidential in-house counselling service you can access, with professionally qualified counsellors and psychotherapists.
You can usually find out what they offer and how to make an appointment in the counselling service section of your university's website. This free service in universities is available to both undergraduates and postgraduates.
Many universities also have a mental health adviser who can help you access the support you need.
As well as counselling or therapy, you may also be entitled to "reasonable adjustments" such as extra time in exams, extensions on coursework, and specialist mental health mentor support.
Many student unions also offer student-led services. Although the students involved are not qualified counsellors, you may prefer to talk about problems such as stress and depression with another student.
Student Minds is the UK's student mental health charity.
Individual universities also usually have student night line services.
There are also online self-help services you can explore, such as:
Counselling and cognitive behavioural therapy (CBT) offer an opportunity to explore your feelings in a safe environment and help you develop ways of coping with them.
As well as university or college counselling services, you might be able to refer yourself for NHS counselling. Search for psychological therapy services to find out what's available in your area.
The University Mental Health Advisers Network (UMHAN) represents the network of mental health advisers working in higher education dedicated to providing practical support to students experiencing mental health difficulties.
At all UK universities, you have the opportunity to apply for a Disabled Students' Allowance (DSA).
Your mental health adviser can help you apply for the DSA, but you will need to provide evidence of a long-term mental health condition.
The DSA pays for:
Even if you decide not to apply for a DSA, a mental health adviser will still be able to let you know what support is available.
Sometimes people use alcohol and drugs to cope with difficult feelings. But underlying mental health problems could be made worse by drugs or alcohol.
You could be misusing alcohol if:
If you're concerned about your drinking or drug use, a good first step is to see a GP. They'll be able to discuss the services and treatments available.
As well as the NHS, there are a number of charities and support groups across the UK that provide support and advice for people with an alcohol misuse problem.
See a full list of alcohol charities and support groups
If you're not comfortable talking to a GP or someone you know about drug misuse, you can also approach a local drug treatment service yourself.
Visit the FRANK website to find local drug treatment services.