The Latest: Syria says 2 civilians killed in Israeli strikes
by The Associated PressJERUSALEM — The Latest on the situation in the Mideast following latest Israeli airstrikes in Syria (all times local):
7:55 a.m.
Syrian state media say two civilians have been killed and several others wounded in a series of Israeli airstrikes near the capital, Damascus.
The state SANA news agency is reporting that Syrian air defences destroyed most of the missiles before they reached their targets in Wednesday’s attack.
The report adds that however, two people were killed by shrapnel from an Israeli missile that hit a house in the town of Saasaa, southwest of Damascus.
SANA says the house was destroyed.
5:55 a.m.
The Israeli military says it has carried out a “wide-scale” strike on Iranian targets in Syria following a rocket attack on the Israeli-controlled Golan Heights the previous day.
In a statement early Wednesday, the military says fighter jets struck dozens of targets, including surface-to-air missiles, weapons warehouses and military bases.
The military said it also struck positions of the Syrian army after a Syrian air defence missile was fired.
Israel said the rocket attack on the Golan Heights was “further clear proof of the purpose of Iranian entrenchment in Syria.”
The Associated Press


The Cause appears to have found a new home
The venue was located by a club regular, Nikolai, who works in the chocolate factory opposite the new space
by James BallAfter recently announcing that it would be moving from its site in Tottenham, The Cause appears to have found a new North London home.
It was discovered by one of the club's regulars, Nikolai (pictured alongside club co-founder Eugene Wild and Stuart Glen), a 55-year-old Romanian man who works in the chocolate factory opposite the new space.
Read this next: Tottenham club The Cause to close next January
While permanent licenses and permissions have yet to be signed off, the new site will debut on New Year's Eve alongside its current base, which is located four minutes away; shuttle buses will take attendees back and forth throughout the night between both sites.
"Since we opened, we were always hunting for our next site," explains Glen. "For a variety of reasons, quite simply none of them have been perfect. However we knew when we stepped inside here, that we could re-create the magic we’re known for IF we can win over the powers that be."
Read this next: London club The Cause is throwing a fundraiser in honour of Keith Flint
He continues, "We have a lot of battles, and quite simply, if we don’t win these, our dreams here will never evolve. As such we’ve seized the opportunity and are extending our last dance in our current space into the first dance of what may or may not be our new home. This will be a triple celebration for the club as we also welcome a new decade with a monstrously big NYE show."
Check out some shots of the new location below.
James Ball is Mixmag's Weekend Editor. Follow him on Twitter
Read this next: Get the best of Mixmag direct to your Facebook DMs
Mixmag Weekly
Get closer to dance music. Sign up for the Mixmag newsletter
Sign me up!


 Courses prior to 1989 are considered to have been short.
The 2009 race was the IAU World and European Championships. The 2014 and
subsequent races have been walking events.
17 Jun
2016
11:02:46
nfn Tkindt (BEL)
13:14:26
Malika Zerifi-3
19 Jun
2015
11:29:50
Geert t'Kindt-2
13:07:38
Malika Zerifi-2
20 Jun
2014
11:25:46
Geert t'Kindt (BEL)
14:50:50
Malika Zerifi (BEL)
21 Jun
2013
6:58.26.2
Aleksandr Holovnitskiy-3
(nc)
7:44:05.2
Irina Antropova (RUS)
(nc)
22 Jun
2012
6:48:21
Aleksandr
Holovnitskiy-2
(nc)
Marija Vrajic-2
(nc)
17 Jun
2011
6:53:01
Yevgeniy Gliva (UKR)
(nc)
Marija Vrajic (CRO)
(nc)
18 Jun
2010
7:10:15
Jaroslaw Janicki (POL)
(nc)
Connie Braekman (BEL)
(nc)
19 Jun
2009
6:40:44
Yasukazu Miyazato (JPN)
(nc)
Kami Semick (OR/USA)
(nc)
20 Jun
2008
6:55:22
Pieter Vermeesh (BEL)
(nc)
Helena Crossan (IRL)
(nc)
Marc Papanikitas (BEL)
(nc)
Barbara Mallmann (BEL)
(nc)
Jose Maria González (ESP)
(nc)
Birgit Schönherr (GER)
(nc)
Valmir Nunes (BRA)
(nc)
Inez Jacquemart (BEL)
(nc)
Aleksandr Holovnitskiy (UKR)
(nc)
Nadezhda Karasova (RUS)
(nc)
Igor Tyazhkorob (RUS)
(nc)
Edit Berces-2
(nc)
Mario Fattore (ITA)
(nc)
Tatyana Zhyrkova (RUS)
(nc)
Gino deLeu (BEL)
(nc)
Elena Bikulova-2
(nc)
Farid Ganiev (RUS)
(nc)
Edit Berces (HUN)
(nc)
Dmitriy Radyuchenko (RUS)
(nc)
Elena Bikulova (RUS)
(nc)
Gregoriy Murzin (RUS)
(nc)
Svetlana Savoskina-2
(nc)
Jan VandenDriessche (BEL)
(nc)
Svetlana Savoskina (RUS)
(nc)
Andrzej Magier (POL)
(nc)
Marta Vass-5
(nc)
Konstantin Santalov (RUS)
(nc)
Maria Bak (GER)
(nc)
Jean-Paul Praet-8
(nc)
Alzira Lario (POR)
(nc)
Jean-Paul Praet-7
(nc)
Marta Vass-4
(nc)
Jean-Paul Praet-6
(nc)
Marta Vass-3
(nc)
Jean-Paul Praet-5
(nc)
Eleanor Robinson (ENG)
(nc)
Jean-Paul Praet-4
(nc)
Marta Vass-2
(nc)
Jean-Paul Praet-3
(nc)
Marta Vass (HUN)
(nc)
Jean-Paul Praet-2
(nc)
Katherine Janicke (GER)
(nc)
Domingo Catalan (ESP)
Agnes Eberle (SUI)
Jean-Paul Praet (BEL)
Sandra Kiddy (CA/USA)
Yiannis Kouros (GRE)
Angela Mertens-2
Roger Luyckx (BEL)
Angela Mertens (BEL)
Gilbert Gevaert (BEL)
Monica Schmidt (GER)
Lucien VanLancker (BEL)
Rita Dezeure (BEL)
Dieter Dippel-2
Dieter Dippel (GER)
(nc)
=> Belgian championship
2013 Nico Serroen was the national champion (4th place, 7:09:16.9)
2013 Hilde
Ottevaere was the national champion (4th place, 9:38:10.4)
2012 Johan Watthy was the national champion (5th place, 7:23:35)
2012 Valerie Turlot was the national champion (2nd place, 9:39:02)
2011 Pieter Vermeesh was the national champion (2nd place, 6:57:39)
2011 Dora VandeWaetere was the national champion (2nd place, 10:14:31)
2010 Pieter Vermeesh was the national champion (2nd place, 7:22:56)
2009 Pieter Vermeesh was the national champion (25th place, 7:23:41)
2009 Connie Braekman was the national champion (20th place, 8:43:44)
2008 Connie Braekman was the national champion (2nd place, 8:48:36)
2007 Christiane Foster was the national champion (2nd place, 10:03:20)
2006 Luc Taelman was the national champion (23rd place, 7:29:10)
2006 Dora VandeWaetere was the national champion (18th place, 9:54:34)
2005 Ivan Hostens was the national champion (3rd place, 7:47:00)
2004 Marc Papanikitas was the national champion (3rd place, 6:53:21)
2004 Inez Jacquemart was the national champion (3rd place, 9:00:24)
2003 Marc VanderLinden was the national champion (5th place, 6:53:07)
2003 Inez Jacquemart was the national champion (2nd place, 8:40:42)
2002 Jan VandenDriessche was the national champion (6th place, 6:48:20)
2002 Inez Jacquemart was the national champion (19th place, 8:43:13)
2001 Karin Bakker was the national champion (3 rd place, 9:29:45)
2000 Jan VandenDriessche was the national champion (4th place, 6:48:24)
2000 Annie VanButsele was the national champion (3rd place, 9:47:31)
1999 Ivan Hostens was the national champion (place unknown, 6:59:58)
1999 Annie VanButsele was the national champion (place unknown, 9:17:30)
1998 Jan VandenDriessche was the national champion (7th place, 6:51:43)
1998 Karin Bakker was the national champion (19th place, 9:10:32)
1997 Karin Bakker was the national champion (place unknown, 8:46:45)
1996 Marc VanderLinden was the national champion (2nd place, 6:28:10)
1996 Karin Bakker was the national champion (2nd place, 8:21:37)
1995 Jan VandenDriessche was the national champion (4th place, 6:49:22)
1995 Karin Bakker was the national champion (3rd place, 8:29:11)
1994 Karin Bakker was the national champion (place unknown, 8:23:29)
1993 Karin Bakker was the national champion (29th place, 9:02:13)
1992 Viviane VanderHaeghen was the national champion (place unknown, 8:32:30)
1991 Diana Blieck was the national champion (place unknown, 10:42:25)
1990 Angela Mertens was the national champion (place unknown, 8:56:39)
1989 Diana Blieck was the national champion (place unknown, 11:09:06)
1989 Angela Mertens was the national champion (place unknown, 8:27:10)
Most Wins
(1980-date)
Men
8
Jean-Paul Praet (BEL)
1986,1988-94
Women
5
Marta Vass (HUN)
1989-90,1992-93,1996
Prize Money (ADR qualified runners) Year Men Women Total 2014 $1,230 $725 $1,955
Race Time Bias
(sec/km)
Not calculated for distances beyond the marathon.

Competitive Level
(1990-date)
Insufficient information to calculate the competitive level.
Quality Performances
Men <2:19 1 <2:20 2 Women <2:46 1 <2:48 3 <2:50 4
Last Updated on 15 Jul 2016
Contributors: Ivan DeGrieck, Andy Milroy, Paul Michiels (13), Juraj Gasparovic (13), Klaas Loonstra (20), Tadeusz Dziekoński (5), Franco Civai (6)


| Application |
{{connection.application}}
N/A
|
| Cluster |
{{connection.consoleUrl}}
N/A
|
| Status | Connected Insecure |


We held the Digital Summit over 4 separate days from 10 to 19 November as a virtual event.
We included presentations, workshops, and panels from key thought leaders from the public sector and industry.
Registered attendees can view all sessions on demand for 12 months after the Digital Summit.
{{> buy-tickets }}Day 1, Tuesday 10 November
Day 2, Thursday 12 November
Day 3, Tuesday 17 November
Day 4, Thursday 19 November
Recent crises have seen government and industry accelerate digital transformation, crucial to business continuity and rapid disaster response.
Thought leaders spoke on digital transformation through crisis, the opportunities change presents, and how we adapt to change and work through disruption:
You can:
The Hon Stuart Robert MP, Minister for the National Disability Insurance Scheme and Minister for Government Services
James O'Loghlin introduces plenary sessions
Jim Grubb, Chief Technology Evangelist, Cisco
Tom Burton, Government Editor, Australian Financial Review
James O'Loghlin and Elanor Huntington, Dean of Engineering and Computer Science, Australian National University
Note: on-demand access does not include workshops.
Lana Thorpe and Francois Kirsten (Deloitte Digital)
Note: on-demand access does not include case-study discussion.
John Cox (Australia Post)
Sarah Coye (Royal Australian Mint)
Lucy Poole (DTA), Cecilia Hill (Deloitte) and Dana Robertson (PM&C)
Driving a human-centred approach to services should be at the heart of everything we do. More agencies are prioritising new tactics to design for and with users, employees, and industry partners.
Advocates in user experience design shared inspiration and strategies for understanding and meeting user needs, including:
You can:
Rebecca Skinner, CEO, Services Australia
Professor Beth Simone Noveck, Director, The Governance Lab
Ernez Dhondy, General Manager, Paper Giant
Ron Gauci, CEO, Australian Information Industry Association and James O'Loghlin
Note: on-demand access does not include workshops.
Note: on-demand access does not include case-study discussion.
Holly Griffin and Craig Cowan (DTA)
Neil King (Vision Australia) and Nick Condon (South Australian Government)
Garrett Tyler-Parker (Pollinate Research)
Leadership and people play an essential role in digital transformation. Digital leadership can transform how government provides services.
Emerging and recognised leaders shared their stories and inspire us to work smarter and lead better:
You can:
Peter Woolcott AO, Commissioner, Australian Public Service Commission
MC introduces plenary sessions
Fiona Hathaway, Managing Director, Global People Team, Slalom
Stephanie Foster PSM, Deputy Secretary, Governance and APS Reform, PM&C and James O'Loghlin
Note: on-demand access does not include workshops.
Julian Smith (DTA) and Craig Smith (SoftED)
Anthony McGinness and Saakshi Joshi (Future Friendly)
Note: on-demand access does not include case-study discussion.
Patrick Kidd OBE OAM, Lyndon Blanchard (Digital Skills Organisation, DESE), Jennifer Mulveny (Adobe), and Grant Nicholson (DTA)
Steph Waddon and Ben Neal (PwC)
Harold Petersen (Fresh tracks Digital Consulting)
We need technology and data to improve the user experience of government services for citizens and businesses. Understanding and interpreting well data delivers better outcomes.
Experts in digital security and privacy provided their insights and experience. They showed us how to use data in an ethical and socially responsible way:
You can:
Randall Brugeaud, CEO, Digital Transformation Agency
Michael Pezzullo AO, Secretary, Department of Home Affairs
Dr Catherine Ball, Scientific Futurist, World of Drones and Robotics/Australian National University
Jonathon Thorpe, Digital Transformation Agency, Quek Sin Kwok, Government Technology Agency (Singapore), Alan Bell, Department of Internal Affairs (New Zealand) and Margo Stephen, Australia Post.
Note: on-demand access does not include workshops.
Jane Headon and Ed Bridgeland (Publicis Sapient)
Glenn Chapman, Speedo Tasbihsazan (Telstra), Ryan Fahy, and Neil MacDonald (Gartner)
Note: on-demand access does not include case-study discussion.
Deb Anton (Office of the National Data Commissioner)
Sean McClowry (Deloitte Digital) and Michael Snell (AirServices Australia)


| fig_path {knitr} | R Documentation |
The filename of figure files is the combination of options fig.path
and label
. This function returns the path of figures for the current
chunk by default.
fig_path(suffix = "", options = opts_current$get(), number)
suffix |
A filename suffix; if it is non-empty and does not
contain a dot |
options |
A list of options; by default the options of the current chunk. |
number |
The current figure number. The default is the internal chunk option
|
A character vector of the form ‘fig.path-label-i.suffix’.
When there are special characters (not alphanumeric or - or _) in the path, they will be automatically replaced with _. For example, ‘a b/c.d-’ will be sanitized to ‘a_b/c_d-’. This makes the filenames safe to LaTeX.
fig_path(".pdf", options = list(fig.path = "figure/abc-", label = "first-plot")) fig_path(".png", list(fig.path = "foo-", label = "bar"), 1:10)


First, it would make little sense for Trump and the Republicans to be referring to restoring economic greatness. While America’s economy is lagging in many realms (wages, trade, growth, eco-infrastructure, etc.), much of its modern economic floundering dates back to the 1980s — the start of the neoliberal and neoconservative era — and is due to Republicans themselves. Neoliberalism refers to the rise of unfettered capitalism during the late 1970s and early 1980s, initiated by Margaret Thatcher and Ronald Reagan on a global scale.
Take wages, for example, which have been a major casualty of the neoliberal era. The Pew Research Center reports that since 1978, American wages have barely grown at all in terms of purchasing power, with a “long slide in the 1980s” — exactly corresponding with the Reagan era. That’s because, according to neoliberalism, workers are disposable commodities whose remuneration does not really matter. (That, of course, does not apply to the top 10% of earners, whose incomes have grown since the 1980s.)
Or, think about job outsourcing. Consider this critique from Business Insider on Trump’s position on outsourcing: “(Trump) overlooks the impact of spending cuts, deregulation, and a shift to shareholder primacy at the expense of investment in innovation and workers … In short: Government cuts and changes in how corporations operate mean American workers are getting screwed by their own government and their own employers.”
The process of outsourcing was abetted by neoliberal free-trade agreements that essentially encouraged companies to move their operations abroad where production is cheaper (while Republicans have been the primary champions of neoliberalism, NAFTA — a quintessential neoliberal trade agreement — was signed by a Democrat, showing how entrenched neoliberalism has become since the 1980s.)
All of this has led to an explosion of inequality. In 2018, Pew Research Center found the top 20% of income earners made over half of all income earned in the U.S. Equally, the U.S. has the highest level of inequality of all the nation members of the G7. Perhaps most significantly for this discussion, the wealth gap between America’s richest and poorest families has more than doubled since 1989. In other words, economic inequality has mushroomed since the Reagan era.
It makes little sense for a problem caused by Republicans to be fixed by more Republicans. While most of America’s modern economic ailments have their roots in the Reagan era, Republicans continue to worship Reagan as an economic god. Of course, to wealthy people like Trump, Reaganomics was indeed a godsend, but this is not so for the vast majority of Americans, whose wages have stagnated and whose economic securities are precarious.
America’s “Golden Age” (1950-1970) was characterized both by higher economic equality than today as well as by greater government intervention and reach (think Eisenhower’s national interstate initiative or Johnson’s War on Poverty). Being that equality and interventionism are generally left-leaning ideals, making America’s economy “great” again is then probably a task better left to the left.
So, now let’s look at the social “greatness” that Trump may be aiming to re-capture. To do this, let’s ask: Over the past century or so, how has America evolved socially and morally? Until 1920, women couldn’t vote nationally. Through the 1950s and 1960s, segregation was legal and practiced, Black voters could be outwardly silenced through such ridiculous measures as literacy tests. Until 2015, gay marriages weren’t nationally recognized.
Over the past several decades, social progress has been significant but incomplete. Acceptance of interracial marriage rose from 20% in 1968 to 87% in 2013. As opposed to 40% at the time of Roe v. Wade (1973), over 60% of Americans now think abortions should be legal during the first trimester. While only 33% of Americans said they would vote for a woman president in 1937, 94% say they would today. Similar prejudices about premarital sex, the role of women and LGBTQ+ rights have equally been eroded in recent history. And, of course, America elected its first Black president in 2007, and now, in 2020, a woman of color is on the ticket to be vice president.
Defining moral “greatness” as the American social landscape before all these milestones actually seems to be compatible with Republican views, and if Trump and other Republicans define social greatness as a land where no one but straight white men have rights, then Trump’s is the fight of a lifetime. But the majority of Americans value social freedom, and this is not their fight.
When we consider the complexities of America’s history, the notion of making America “great” again loses even more meaning: Was America greater when white people could own Black people? Was America greater when it systematically displaced and killed indigenous peoples? Was America greater when it placed Japanese Americans in internment camps? In this regard, the slogan “Make America Great” would make more sense than “Make America Great Again” because, frankly, America’s history is too complex — and often too dark — to suggest a return to it.
In the end, we are left with a strange predicament: whether making America great again means doing so economically or socially, Republicans are not the ones to do it. Economically, many of the problems we see today are the result of Republican tenets of neoliberalism. On the other hand, the only possible way to say that America was once socially greater than it is now can only be done through the lens of xenophobia, racism, sexism and countless other forms of bigotry.
Sam Smith is a rising senior studying geography at Ohio University. Please note that the views and opinions of the columnists do not reflect those of The Post. Want to talk more about it? Let Sam know by tweeting him @sambobsmith_.


Bash does not support multidimensional arrays. Use 1D or associative arrays.
foo[1][2]=bar
echo "${foo[1][2]}"
In bash4, consider using associative arrays:
declare -A foo
foo[1,2]=bar
echo "${foo[1,2]}"
Otherwise, do your own index arithmetic:
size=10
foo[1*size+2]=bar
echo "${foo[1*size+2]}"
Bash does not support multidimensional arrays. Rewrite it to use 1D arrays. Associative arrays map arbitrary strings to values, and are therefore useful since you can construct keys like "1,2,3"
or "val1;val2;val3"
to index them.
None.


Free
public
Publish Key
sub-c-e463d758-8b05-11e6-a68c-0619f8945a4f
Subscribe Key
0 Messages
0 Devices


Bait And Switch and Brilliant Gold please
Bait And Switch and Brilliant Gold pleased when the horses were exercised here on Friday (Nov. 22) morning.
Inner sand:
600m: Take It Easy (Nazil) 40. Easy.
800m: Dandi March (Sameer), Titanium (V. Jodha) 48, 600/36. Former was well in hand and they finished level. Divija (Sameer), Multibagger (V. Jodha) 50.5, 600/38. They were urged and ended level. Gazino (rb) 53, 600/39. Moved freely.
1000m: Bait And Switch (V. Jodha), Brilliant Gold (Sameer) 1-3, 800/49, 600/36.5. They moved level impressively. Gods Plan (Akshay) 1-11, 600/42. Easy.
1400m: Rhapsody (Roche) 1-41, 600/43. Easy.


loklak
This is the front-end of loklak
, an application which is able to collect and analyse messages from various sources, including twitter. The application is divided into two parts: loklak
.net, the front-end (these pages) and loklak
.org, the search- and collecting back-end.
The back-end is not only able to collect millions of messages anonymously from twitter, it can also distribute the collection workload into a peer-to-peer network. The back-end also stores the messages into an elasticsearch search index and into a downloadable message dump which can be imported into fresh, new loklak peers. The front-end uses a simple api to retrieve messages and mass-message statistics. This front-end (these pages) are made with angular.js and node.js
This software is free and can be downloaded from the loklak github project


Dev Club, TCSC
Dev Club is a community of students highly enthusiastic about software development, ethical hacking, web designing and all other aspects of programming. We aim to provide a gateway for the people in our institute to join the coding community.
Ideate
What does it mean to ideate? We at Dev Club promote thinking out of the box to develop tools and softwares that would help not only students but to others too. Developing new things can be quite intriguing and challenging at the same time. Thus, we as a community will not only help in laying down the initial plan for your work but also guide you along the way.
Code
Learning to code can be frustrating during inital phase when you are learning.  We provide resources to the newcomers to bootstrap and learn quickly anything they want to learn. Along with us internet can be your guide along the way you learn new technologies.
Open Source Contribution
Despite tons of ways to learn how to code, we believe that the best way to improve your skills is by contributing to open source projects. You are not only learning to code but helping your favourite open source project to stay active by helping them in a way or other. Also, sometimes these contributions you did can help you landing you dream job!
Collaborate
Why collaborate? Sometimes it's impossible for someone to build a product all by themselves. It takes time and team work to develop something great. Even Rome wasn't built in a day. We want people to come together and code because this helps the community to stay healthy by taking several different inputs of user while working and shaping a product.


WHEN THE TENTH MONTH COMES A film review by Thomas E. Billings Copyright 1989 Thomas E. Billings
Synopsis: A young woman, living with her in-laws, tries to conceal the fact that her soldier husband was killed in the (Vietnam) war. She has the local schoolmaster write counterfeit letters to the family (presumably from her husband), thereby concealing the news of his death. The schoolmaster begins to fall in love with her, and complications develop.
Vietnam (English subtitles), black and white, 1984, 90 minutes. Director/Writer: Dang Nhat Minh
A young woman journeys to the front, presumably to visit her husband. Instead she learns that he has been dead for nearly a year. She decides to conceal the news from her in-laws, with whom she lives.
To carry out the deception (the precise motivation for which is not made clear in the film), the woman enlists the aid of the village school teacher, who writes counterfeit letters to the family in the name of her dead husband. The letters, though phony, have a strong emotional impact on her, and make her long for her husband.
Meanwhile, the school teacher is slowly falling in love with her, and she starts to have feelings (though restrained) for him. Their association, in the small village they are living in, results in gossip and problems when the local (Communist) Party officials investigate. As a result of the Party investigation, numerous complications arise, and the story continues from there.
This film is clearly a melodrama, as it deals primarily with the topics of grief, family association, and passion. It could be considered to be a soap opera, as it centers on the suffering of a young woman (a very common theme in modern soap operas), though it takes a very restrained approach to the emotions of the subjects. Certainly restraint is not very common in modern soap operas!
Technically, the film has some rather bothersome flaws. At times the editing is very choppy. Also, there is a lot of dialogue that is not subtitled (which, of course, makes it more difficult to understand if you don't speak Vietnamese). Finally, the photography is grainy at times.
Making a recommendation on this film is difficult. In evaluating a melodrama, the issue of emotional development and/or attachment arises. Do you "feel" for the characters? Does the story hold your interest?
I didn't "feel" much for the characters, though I found the story to be, overall, reasonably interesting. The deception aspect was interesting; however it was treated as an assumption of the story. Instead, the story centered on the (less interesting aspects, in my view) grief and restrained passion between the two main characters. Fans of melodrama may find the film to be of interest.
Remark: this film is in limited distribution as part of "The Vietnam Film Project," a touring exhibition organized by the UCLA Film and Television Archive, with assistance from The Asia Society (New York) and the East-West Center (Hawaii).
Reviewer: Thomas E. Billings, Department of Statistics University of California, Berkeley Reviewer contact<EMAIL_ADDRESS>.
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


The small town of Vodice is a tourist resort about 5nm NW of the entrance channel leading to Sibenik.
The attractive fishing village of Tribunj is just 2nm to the west.
Position 43°45.4'N, 15°46.8'E (Vodice).
This is not a Port of Entry.
Vodice
The marina is to sta'bd on approach to the harbour. When approaching the marina entrance, beware of a rocky shoal marked by an unlit beacon. Berth as directed. Beware of the concrete blocks on the seabed.
It is also possible to anchor SE of the marina breakwater in about 5m over sand.
Tribunj
Berth in the marina or tie to the quay on the western side of the village. Facilities for super-yachts (max. length 30m)
Anchor to the W or SW of the village in about 3 to 6m.
Last updated February 2014.


You can configure securities with the SetSecurityInitializer
helper just like in a Classic Algorithm. Call this method from your Initialize() method and set a class or use the functional implementation for simple requests. For more information on this see the Configuring Universe Securities section.
//Most common request; requesting raw prices for universe securities. SetSecurityInitializer(x => x.SetDataNormalizationMode(DataNormalizationMode.Raw));
# Most common request; requesting raw prices for universe securities. self.SetSecurityInitializer(lambda x: x.SetDataNormalizationMode(DataNormalizationMode.Raw))


Home Blog About Project Resume
Teaching Learning Management
Every semester we go through the planning process for imparting quality education and measure the effectiveness of teaching learning process.
Some of the tasks we undertake today, mostly carried out manually, are:
Management platform
Finding solutions to a problem may be based on the following approaches: Buy, build or integrate.
The option of buying is generally expensive. And the product may not be the best fit for the problem.
Building from scratch is time consuming and maintenance costs are prohibitive. Any attrition and transitioning skills is painful.
Integrating a solution from open source tools is attractive as it is free and the only investment is acquiring the skills to integrate.
AIT has received google G suite consisting of software tools for creating documents, forms, classrooms and unlimited storage capacity for education.
And a separate domain www.atria.edu for collaborating mails between teachers, students and guardians.
The G suite tools work seamlessly between desktops, palmtops and chrome books. Chrome books are tailor made for better experience with G suite.
We have been using google drive for storage and forms from the individual accounts but not yet integrated the student community.
Off the shelf platform such as G suite is better than in house development due to long support needed in maintenance and enhancements.
What is google classroom?
The classroom tool in G suite help collaborating some of the above tasks with all the stake holders - teachers, students, guardians and management. Can customize the above tasks, if required, that are unique to our institute using the google app scripts.
Organizing class rooms tasks around G suite enable students to access 64 courses all the time in their 4 year BE. And teachers will have the access to courses they have created over a period of time.
Others management tasks such as recording attendance, internal marks, feedback etc. have to be handled independently. The Feedback task has already been addressed using google forms and same can be extended for other remaining management tasks.
Solution to management tasks with google forms is future proof, scalable, secure and easy to manage. The LMS system that have been tried out in the past are too complex and not successful.
https://support.google.com/edu/classroom/answer/6020279?hl=en&ref_topic=7175444
Classroom prototype.
The prototype of classroom for "Computer Networks" course has been tried out in CSE department. Where students joined the class with their gmail IDs. The teacher shared class room material like lesson plan, question bank, class notes, etc. In addition questions, quizes and assignments to students for continuous assessment.
The quizes and questions are graded and returned to students as feedback. End of the course, the summary of each students grades available in one place for objective assessment.
The prototype classroom was conducted that used the gmail accounts of students. However, creating emails in our institute domain www.atria.edu is desirable.
Google forms for management tasks.
Google forms is one of the excellent medium for data collection. It has limited facilities for data analysis.
The google forms required for keeping track of the management activities such as registration, attendance, feedbacks, internal marks, etc have been created.
There are two types of forms i) static form ii) dynamic forms. Static forms are complete by itself and does not dependent on external data. For example, allotment form and registration form. Dynamic forms are generated based on external data. Example of dynamic forms are feedback forms that uses data about subject allotments, attendance forms that uses student lists of the sections.
The suitable reports about attendance, internals, etc will be generated periodically say once every week. Reports every day may be considered based on the experience gained from weekly reports.
What Next?
Create mail accounts for all students with www.atria.edu domain. Train the staff regarding google classroom. And train the class coordinators regarding google forms for management tasks. Finally store the student lists, section wise, in a spread sheet.
Class coordinator
Teachers
Sample class scenario
Student
| Id | Course Code | … | Course N |
| A1 | % | % | |
| A2 | % | % | |
| T1 | |||
| T2 |
A1 - Last one week attendance, A2 - Cumulative attendance
Department (Attendance, Internal, Results)
Repository (Attendance, Internal, Results)


Robotics Business Team
The business team is the newest addition to our robotics team founded by Aspen Harter in 2018. They are responsible for community outreach, sponsorships, engineering notebook, scouting, the official Oakton Cougar Robotics website, and social media. The business team members are on the team for both FTC and FRC. The Business team is much smaller than FTC & FRC but is beneficial to the success of the Oakton Cougar Robotics. They attend every competition and talk to other teams for possible collaborations for outreach events and scout for alliances. The business team paves the way for FTC and FRC to succeed in competitions, financially, and popularity of this club


New File
Open File
Save
Save As
Print
Project Option
Assignment
Construct
Compute
Section View
Export
Open File
×
Select file from your computer
2D
3D
Project Option
×
Overview
Display
Slip Surface
Seismic
Analysis
Groundwater
Run-out
Advanced
Project Name
2D
3D
Unit System
Metric
Imperial
Unit
Gravity Acceleration
Decimal Point
Sig. Fig.
Accuracy
Show Support Forces
Support Force
Slip Surface
Seismic Force Applied
Seismic Force Input
Analysis Method
Max Slices/Column
Intercolumn Force
Constant
Half-sine
User Defined (To be Added)
Unit Weight of Water
Groundwater Method
Run-out Analysis Conducted
Time Interval
Criterion
Analysis Method
Lateral Confinement
Tension Crack
Maximum iteration
Minimum Lambda
Maximum Lambda
Initial trial value of FS
FS tolerance
Sliding Direction
Left to Right
Right to Left
Assignment
×
Name
Assignment
Type
{{ material.name }}
{{ material.assignment }}
{{ material.type }}
Add
Delete
Soil Material
Support
External Load
Basics
Groundwater
Run-out
Name
Color
Unit Weight
Slope Analysis Strength
Cohesion (c')
Friction Angle(φ')
Su (top)
Su (datum)
Δ
Su
z (datum)
τ (max)
τ (min)
p
a
a
b
...
...
Construct
×
Slope
Support
External Load
Slip Surface
...
...
...
...
Compute
×
Section View
×


|
Unofficial
Quake 3 BSP Format
Author: Ben "Digiben" Humphrey
This document was created as an aid to the Quake3 BSP
tutorial series featured on www.GameTutorials.com.
The information is what I have found, and it's possibly
that it's incorrect or just blatantly wrong. I suggest you use this
as a reference and a guide, not the end all file format doc for the
Quake3 .bsp file format. With that out of the way, let's load some
sweet levels!
The Quake3 level format, .bsp, stores most of the information about
the level. There are other files such as .shader, .arena and .aas,
which store bot and texture shader information. The .bsp file is
stored in what is called a IBSP format.
That means that the length and offsets of different sections in the file
are stored in what's know as lumps.
The older version of Quake use this same lump format, but different
information is stored in each version of Quake. If you can read in
Quake 3 levels, it's not a lot of changes to write a Quake 2 level
loader.
If you don't know what BSP stands for yet, it means Binary
Space Partition(ing). You would create a BSP tree. That
means that there is a parent node, and at most, 2 children attached to
each parent. These children are called the front and back
children. I won't attempt to teach you how to create or manage
a BSP tree here, but there is a BSP FAQ that SGI
put out floating around the internet somewhere that has a ton of
information. Better yet, I suggest you take the BSP class at www.GameInstitute.com.
I personally took this class and was quite satisfied. It teaches
all you need to know about BSP trees.
Like we mentioned before, lumps hold the length in
bytes and offset into the file for a given section. Below is an
enum eLumps that holds all the lumps and their order in the file:
enum eLumps
{
kEntities = 0, // Stores
player/object positions, etc...
kTextures,
// Stores texture information
kPlanes, //
Stores the splitting planes
kNodes,
// Stores the BSP nodes
kLeafs,
// Stores the leafs of the nodes
kLeafFaces, // Stores the
leaf's indices into the faces
kLeafBrushes, //
Stores the leaf's indices into the brushes
kModels, //
Stores the info of world models
kBrushes, // Stores
the brushes info (for collision)
kBrushSides,
// Stores the brush surfaces info
kVertices, // Stores the
level vertices
kIndices, // Stores
the level indices
kShaders, // Stores
the shader files (blending, anims..)
kFaces,
// Stores the faces for the level
kLightmaps, // Stores the
lightmaps for the level
kLightVolumes, // Stores
extra world lighting information
kVisData, // Stores
PVS and cluster info (visibility)
kMaxLumps // A
constant to store the number of lumps
};
Each on of these sections has a
offset and a size in bytes that need to be read in. In the next
sections we will examine the structures needed to read in each lump.
Here is a lump
structure. The offset is the position into the file that is
the starting point of the current section. The length is the
number of bytes that this lump stores.
struct tBSPLump
{
int offset;
int length;
};
Let's give an example of reading in the vertices (kVertices) for
the level. Once the lumps are read in, to find the number of vertices
in the level we do this:
numOfVerts = lumps[kVertices].length /
sizeof(tBSPVertex);
We index the lumps[] array with the kVertices
constant, then divide that lumps length by the size of the tBSPVertex
structure in bytes, which we will define later on. It just so
happens it's 44 bytes. If the length is
3388, then 3388 / 44 = 77. We now know there is
77 vertices in the .bsp file. We then need to position the file
pointer to the lump's offset, and start reading in 77 tBSPVertex
structures into our dynamically allocated vertex array. I use fread() and fseek() for the file
manipulation. This is of course, ONLY if you are not reading from
the .zip file. I am strictly speaking of loading the .bsp file
unzipped.
Now that we understand the basics of lumps, let's
move on to the header structure, along with the rest of the structures
for each lump read in.
The very first thing that needs to be read in for
the .bsp file is the header. The header contains a 4 character ID,
then an integer that holds the version.
struct tBSPHeader
{
char strID[4]; // This
should always be 'IBSP'
int version;
// This should be 0x2e for Quake 3 files
};
This structure stores the vertex information. There
is a position, texture and lightmap coordinates,
the vertex normal and color. To calculate the number of vertices in
the lump you divide the length of the lump by the sizeof(tBSPVertex).
struct tBSPVertex
{
float
vPosition[3]; // (x, y, z) position.
float vTextureCoord[2]; // (u, v) texture
coordinate
float vLightmapCoord[2]; // (u, v) lightmap
coordinate
float
vNormal[3]; // (x, y, z) normal
vector
byte
color[4]; //
RGBA color for the vertex
};
This structure holds the face information for each
polygon of the level. It mostly holds indices into all the vertex
and texture arrays. To calculate the number of faces in the lump
you divide the length of the lump by the sizeof(tBSPFace).
struct tBSPFace
{
int
textureID; // The index into
the texture array
int
effect; //
The index for the effects (or -1 = n/a)
int
type;
// 1=polygon, 2=patch, 3=mesh, 4=billboard
int startVertIndex; // The index into
this face's first vertex
int
numOfVerts; // The number of vertices
for this face
int
startIndex; // The index into
the indices array
int numOfIndices; // The
number of level indices
int
lightmapID; // The texture index for
the lightmap
int lMapCorner[2]; // The
face's lightmap corner in the image
int lMapSize[2];
// The size of the lightmap section
float lMapPos[3]; // The
3D origin of lightmap.
float lMapVecs[2][3]; // The 3D space for s and
t unit vectors.
float vNormal[3]; // The
face normal.
int
size[2]; // The
bezier patch dimensions.
};
If the face type is 1
(normal polygons), the vertexIndex and numOfVerts can be used to index
into the vertex array to render triangle fans.
If the face type is 2 (bezier
path), the vertexIndex and numOfVerts act as a 2D grid of control points,
where the grid dimensions are described by the size[2]
array. You can render the bezier patches with just the vertices and
not fill in the curve information, but it looks horrible and
blocky.
The point of the curved surfaces are to be able to create
a more defined surface, depending on the specs of the computer that is
running that application. Some computers with horrible speed and
video cards would make the smallest amount of polygons from the curve,
where as the fast computers using Geforce cards could use the highest
amount of polygons to form a perfect curve.
If the face type is 3 (mesh
vertices), the vertexIndex and numOfVerts also work the same as if the type
is 1
If the face type is 4, the
vertexIndex is the position of the billboard. The billboards are
used for light effects such as flares, etc...
The texture structure stores the name of the texture,
along with some surface information which are
associated with the brush, brush sides and faces. To calculate the
number of textures in the lump you divide it's length
by the sizeof(tBSPTexture).
struct tBSPTexture
{
char strName[64]; // The name of the
texture w/o the extension
int
flags; // The
surface flags (unknown)
int
textureType; // The type of texture
(solid, water, slime, etc..) (type & 1) = 1(solid)
};
Unlike the textures, the lightmaps are stored in the
.bsp file as 128x128 RGB images. Many faces share the same lightmap
with their own section of it stored in the lightmap UV coordinates.
Once you read in the lightmaps, you will want to create textures from
them. To calculate the number of lightmaps
in the lump you divide the length of the lump by the
sizeof(tBSPLightmap).
struct tBSPLightmap
{
byte imageBits[128][128][3]; // The
RGB data in a 128x128 image
};
The node structure holds the nodes that make up the
BSP tree. The BSP is not used for rendering so much in Quake3, but
for collision detection. The node holds the splitter plane
index, the front and back index, along with the bounding
box for the node. If the front or back indices are
negative, then it's an index into the leafs
array. Since negative numbers can't constitute an array index, you
need to use the ~ operator or -(index + 1)
to find the correct index. This is because 0 is the starting index.
To calculate the number of nodes in the lump you divide the length
of the lump by the sizeof(tNode ).
struct tNode
{
int plane; // The
index into the planes array
int front; // The
child index for the front node
int back; //
The child index for the back node
int mins[3]; // The bounding
box min position.
int maxs[3]; // The bounding
box max position.
};
The leafs, like the faces,
are a very important part of the BSP information. They store the visibility cluster, the area portal, the leaf
bounding box, the index into the faces, the number of leaf faces, the
index into the brushes for collision, and finally, the number of
leaf brushes. To calculate the number of leafs in the lump you
divide the length of the lump by the sizeof(tLeaf ).
struct tLeaf
{
int
cluster; //
The visibility cluster
int
area;
// The area portal
int
mins[3]; //
The bounding box min position
int
maxs[3]; //
The bounding box max position
int
leafface; // The
first index into the face array
int numOfLeafFaces; // The
number of faces for this leaf
int
leafBrush; // The first
index for into the brushes
int numOfLeafBrushes; // The number of
brushes for this leaf
};
The leaf faces are used to index into tBSPFaces
array. You might at first think this is strange to have the tBSPLeaf
structure have an index into the pLeafFaces array, which in turn
is just an index into the tBSPFaces array. This is because
it's set up to start with a starting point (leafface) and a count
to go from there for each face (numOfLeafFaces). The faces
array is not contiguous (in a row) according to each leaf. That is
where the leaf faces array comes into play. It's kinda like the
same concept of model loaders where they store the vertices and then have
faces that store the indices into the vertex array for that face.
To calculate the number of leaf faces in the lump you divide the length
of the lump by the sizeof(int).
int
*pLeafFaces;
// The index into the face array
The plane structure
stores the normal to the plane and it's distance
to the origin. We use this as the splitter plane for the BSP
tree. When rendering or testing collision, we can test the camera
position against the planes to see which plane we are in front of.
To calculate the number of planes in the lump you divide the length
of the lump by the sizeof(tPlane ).
struct tPlane
{
float vNormal[3]; //
Plane normal.
float
d;
// The plane distance from origin
};
The visibility information is comprised of a bunch
of bitsets that store a bit for every cluster. This is because the
information is so massive that this way makes it faster to access and a
smaller memory footprint. There is only one instance of this
structure, but you calculate how much needs to be read in bytes by
either: numOfVectors * vectorSize, or minute the size of 2 integers from
this lumps length. The pVecs is then dynamically allocated and
stores the calculate bytes. This is probably one of the most
confusing parts about the .bsp file format, the visibilty. I will
try and explain the important parts of it and give some code.
struct tVisData
{
int numOfVectors; //
This stores the number of bit-vectors
int
vectorSize; // The size of
bit-vectors in bytes
byte
*pVecs; // This
holds all of the cluster bits
};
To demonstrate what a cluster is and what we need to
do with it, let's start with a simple example. When rendering,
first we want to find which leaf we are in. Once again, a leaf is
an end node of the BSP tree that holds a bunch of information about the
faces, brushes and the cluster it's in. Once that leaf is founding
by checking the camera position against all of the planes, we then want
to go through all of the leafs and check if
their cluster is visible from the current cluster we are in. If it
is, that means that we need to check if that leaf's bounding box is
inside of our frustum before we draw it.
Say we have cluster A, B and C. Each cluster
is stored as a bit in bitset. A bitset is just a huge list of
binary numbers next to each other. Each cluster has their own list
of bits that store a 1 or a 0 to tell if the cluster in that bit is
visible (1) or not visible (0). Since there is
most likely more than 32 clusters in a level, you can't just use an
integer (32-bits) to store the bits for all the clusters. This is
why there are many bytes assigned to each cluster. So, here
is how it works:
With cluster A, B and C, here is how they would be
represented in binary (a bitset):
ABC
000
Each 0 represents a slot that is assigned to a
cluster. Let's assume that:
- Cluster A can see cluster B and not C
- Cluster B can see cluster A and C
- Cluster C can see cluster B and not A
Below is a representation of each one of their
bitsets:
- A 110
- B 111
- C 011
Does that make sense? Notice for A there is a
1 in the first slot which means it can see itself, and also in the second
slot which means it can see cluster B. The last slot is a 0, which
tells us that cluster A can not see what's in cluster C because some
walls or whatever are blocking it. This is where the good spatial
partition speed comes in. If you are in the very bottom corner of
the level in a small little room, you just cust out probably 95% percent
of the polygons that need to be rendered because you can only most likely
see the cluster that is right outside of that room.
To test if a cluster is visible from another
cluster, there is obviously going to have to be some bit-shifting and
other binary math involved. The basic algorithm to test a cluster
against another cluster is as follows:
int visible = pVecs[currentCluster*vectorSize + (
testCluster/8 )] & (1 << (testCluster & 7))
If the result of visible isn't 0, then the testCluster
can be seen from the currentCluster. We divide and % (mod)
by 8 because we are using bytes which are 8 bits. Basically,
the first part is indexing into the array of clusters to find the correct
bitset, then we do a binary & (and) with the cluster we are testing
to get the result.
Here is some basic code to do a cluster to cluster
test:
inline
int IsClusterVisible(tVisData *pPVS, int current, int test)
{
if(!pPVS->pVecs || current < 0) return 1;
byte
vector=pPVS->pVecs[(current*pPVS->vectorSize) + (test/8)];
int result = vector & (1 << (test & 7));
return ( result );
}
The entity lump just stores a huge string with each
line delimited by '\n'. Some types of things stored in this string
is the deathmatch positions for the players in the beginning, weapon
positions, sky box information, light positions, etc... I suggest
you save it off to a file so that you can get a good idea on how to parse
it. Be careful when writing a parser, things aren't
always saved in the same order. Player positions usually store the
3D position on the map, along with the orientation described by a
rotation angle. To find the length of the entity string to read in,
just divide the entity lump's length by sizeof(char).
char *strEntities;
// This stores a huge string of all the entities in the level
The brushes store information about a convex volume,
which are defined by the brush sides. Brushes are used for
collision detection. This allows the level editor to decide what is
collidable and what can be walked through, such as trees, bushes or
certain corners.
struct tBSPBrush
{
int
brushSide; //
The starting brush side for the brush
int numOfBrushSides; //
Number of brush sides for the brush
int
textureID; //
The texture index for the brush
};
Like the leaf faces, leaf brushes are used to index
into the tBSPBrush array. Once again, brushes are used for
collision detection. To calculate the number of leaf brushes in the
lump you divide the length of the lump by the sizeof(int).
int *pLeafBrushes;
// The index into the brush array
The brush sides lump stores information about the
brush bounding surface. To calculate the number of brush sides,
just divide the lumps length by sizeof(tBSPBrushSides).
struct
tBSPBrushSide
{
int
plane;
// The plane index
int
textureID; // The
texture index
};
The model structure stores the face and brush
information, along with the bounding box of the object. These
objects can be movable such as doors, platforms, etc... To
calculate the number of models in this lump, just divide the length
of the lump by sizeof(tBSPModel).
struct
tBSPModel
{
float
min[3]; //
The min position for the bounding box
float
max[3]; //
The max position for the bounding box.
int
faceIndex; // The
first face index in the model
int
numOfFaces; // The number
of faces in the model
int
brushIndex; // The first
brush index in the model
int numOfBrushes;
// The number brushes for the model
};
This stores a list of vertex offsets that are used
to create a triangle mesh. To calculate the number of mesh vertices
in the lump you divide the length of the lump by the sizeof(int).
int *pMeshVerts;
// The vertex offsets for a mesh
The shader structure basically gives you the file
name, for a *.shader file. The .shader file then stores all of the
information about blending, animating and such. The shader files
can be found usually in the scripts\ folder, assuming that there are any
textures in the level that use shaders of course. To calculate the
number of shaders for this lump, just divide the length of the
lump by sizeof(tBSPShader).
struct
tBSPShader
{
char strName[64]; // The name
of the shader file
int brushIndex; //
The brush index for this shader
int
unknown; // This is
99% of the time 5
};
Not everything in Quake3 is lit by lightmaps.
There are other lights that have their own special properties. I
believe you can get the rest of the light information from the entities
lump. To calculate the number of lights in the lump, just divide
the length of the lump by sizeof(tBSPLights).
struct
tBSPLights
{
ubyte ambient[3]; // This is
the ambient color in RGB
ubyte directional[3]; // This is the directional color
in RGB
ubyte direction[2]; // The direction of
the light: [phi,theta]
};
The light data makes up a 3-Dimensional grid with
dimensions of:
x =
floor(models[0].max[0] / 64) - ceil(models[0].min[0] / 64) +
1
y = floor(models[0].max[1] / 64) - ceil(models[0].min[1] /
64) + 1
z = floor(models[0].max[2] / 128) - ceil(models[0].min[2] / 128) +
1
This is an on going project to add to this file, so
if you have any pointers, corrections, or additions, let me know and I
will post them. Once again, this was used as a tag along with the
BSP tutorial series on www.GameTutorials.com.
I would like to thanks these people for their HUGE help on creating this
document and understanding the .bsp file format:
Kekoa Proudfoot -<EMAIL_ADDRESS>Bart Sekura -<EMAIL_ADDRESS>Ignacio Castano -<EMAIL_ADDRESS>Emmanuel Weber -<EMAIL_ADDRESS>Ben “DigiBen” Humphrey
Game Programmer
<EMAIL_ADDRESS>www.GameTutorials.com
The Quake3 file format is owned by ID Software. This
tutorial is being used as a teaching tool to help understand level
loading and advanced 3D topics. All right reserved.
|


Cycling | Education | Emacs | Exercise | Politics | Reading | Ruby | Sysadmin |
Cycle Jaunt Around Bath
Sunday involved a train ride to bath with a Brompton in fold, and then cycling around the Two Tunnels circular route. A quick stop at The Hope and Anchor pub to avoid the sleet and get a quick half-way coffee, is highly recommended.
How to create an instance that pulls your website content automatically
Amazon Web Services allows you to spin up instances very quickly. This how to will show you how to upload your content to a S3 bucket and then launch an instance that pulls that content in and starts Apache to serve that content.
AWS - How to Create A VPC
AWS allows you to create your own virtual private cloud (or VPC). This is a network within which your machines will communicate. You can control the level of access across your VPC through subnets, Network Access Control Lists and Security Groups.
AWS - How to Serve Traffic from a Load Balancer
Amazon Web Services (AWS) allows you to serve private network traffic from behind a public load balancer. This offers extra security benefits as it detects DDOS traffic and other exploits and offers a layer of protection.
TADS walk Swindon to Goring
TADS - Teresa, Adam, Dave and Shep walking. We have been walking for about 2 years now, all around the South East. This was our longest walk by far in two days. Swindon to Goring.
subscribe via RSS>


everge
Last Published: 2020-05-20
|
Version: 0.2.0
Project Documentation
Project Information
Project Reports
Javadoc
Test Javadoc
Changes
Change Log
File Activity
Developer Activity
Overview
Coverage
everge - Simple text replacement application
Release History
Version
Date
Description
0.2.0
Work up to the addition of pattern guards
Release 0.2.0
Type
Changes
By
Initial release :)
Ben Culkin
Added a basic CLI front-end
Ben Culkin
General cleanup, including the addition of pattern guards
Ben Culkin


Because of your incredible generosity, all 71 families were sponsored — in just 20 days!!  Because of you, these families will all receive a $100 gift card to use as they need.
You're making our dream a reality, and we cannot thank you enough!
If you're interested in participating in this campaign again, please check out our campaign for 2018 below.
Sponsor a Family Today


Spark Print Sample App
Log in
Manage Printers
Print Job
Job Status
New Token
Resume
Pause
Cancel
×
WARNING
Generating a new token will disconnect your current printer simulator, are you sure?
×
Spark Sample App
This is an open source Print API demo sample app.


Fork of the code at http://blog.tinisles.com/2011/10/google-authenticator-one-time-password-algorithm-in-javascript
This page contains a javascript implementation of the new Blockchain-based One-time Password Algorithm, BOTP, inspired on the TOTP used by Google Authenticator and described in the TOTP RFC Draft.
The BOTP is in development. When a PAM module will be available for installation and configuration on servers, you would use a client app similar to this demo to create one-time passwords for your own application. You would add an account plus secret by scanning a QR code (more info on the google code wiki). The javascript below implements the algorithm the smartphone app would to generate the OTP - you would use this same algorithm server-side to verify an OTP.


invo.LinearModels package¶
Submodules¶
invo.LinearModels.AbsoluteDualityGap module¶
Absolute Duality Gap Inverse Optimization
The absolute duality gap method for inverse optimization minimizes the aggregate duality gap between the primal and dual objective values for each observed decision. The problem is formulated as follows
-
class
invo.LinearModels.AbsoluteDualityGap.
AbsoluteDualityGap
(**kwargs)¶ Bases:
object
Formulate an Absolute Duality Gap method of GMIO.
Parameters: - tol (int) – Sets number of significant digits. Default is 8.
- verbose (bool) – Sets displays. Default is False.
- force_feasible_method (bool) – If set to True, then will enforce the hyperplane projection method regardless of feasible points. Default is False.
- ban_constraints (list) – A list of constraint indices to force to zero when solving. Default is none.
Example
Suppose that the variables
A
andb
are numpy matrices andpoints
is a list of numpy arrays:model = AbsoluteDualityGap() model.FOP(A, b) model.solve(points) print (model.c)
-
FOP
(A, b)¶ Create a forward optimization problem.
Parameters: - A (matrix) – numpy matrix of shape .
- b (matrix) – numpy matrix of shape .
Currently, the forward problem is constructed by the user supplying a constraint matrix
A
and vectorb
. The forward problem is
-
rho
(points)¶ Solves the goodness of fit.
-
solve
(points, **kwargs)¶ Solves the inverse optimization problem.
Parameters: points (list) – list of numpy arrays, denoting the (optimal) observed points. Returns: the optimal value of the inverse optimization problem. Return type: error (float) First check if all of the points are feasible, in which case we can just project the points to each of the hyperplanes. Let denote the centroid of the points. Then, we just solve
Let denote the optimal index. The optimal cost and dual variables are
If not all of the points are feasible, then we need to solve an exponential number of optimization problems. Let be a partition of the index set of length
n
. For each possible partition, we solve the following problem
invo.LinearModels.RelativeDualityGap module¶
Relative Duality Gap Inverse Optimization
The relative duality gap uses the ratio of the primal objective value over the dual objective value of the forward problem as the measure of sub-optimality. This inverse optimization problem is formulated as
-
class
invo.LinearModels.RelativeDualityGap.
RelativeDualityGap
(**kwargs)¶ Bases:
object
Formulate an Absolute Duality Gap method of generalized linear inverse optimization.
Parameters: - tol (int) – Sets number of significant digits. Default is 8.
- verbose (bool) – Sets displays. Default False.
- ban_constraints (list) – A list of constraint indices to force to zero when solving. Default is none.
Example
Suppose that the variables
A
andb
are numpy matrices andpoints
is a list of numpy arrays:model = RelativeDualityGap() model.FOP(A, b) model.solve(points) print (model.c)
-
FOP
(A, b)¶ Create a forward optimization problem.
Parameters: - A (matrix) – numpy matrix of shape .
- b (matrix) – numpy matrix of shape .
Currently, the forward problem is constructed by the user supplying a constraint matrix
A
and vectorb
. The forward problem is
-
rho
(points)¶ Solves the goodness of fit.
-
solve
(points, **kwargs)¶ Solves the inverse optimization problem.
Parameters: points (list) – list of numpy arrays, denoting the (optimal) observed points. Returns: the optimal value of the inverse optimization problem. Return type: error (float) To solve a relative duality gap problem, we solve the three following optimization problems.
The optimal value of the relative duality gap problem is equal to the optimal value of the minimum of these problems. Let denote the optimal solution of that corresponding problem. Then, the optimal solution of the relative duality gap problem is
invo.LinearModels.pNorm module¶
Decision Space Inverse Optimization with a p-norm.
These models measure error in the space of decision variables, rather than objective values. In particular, these models aim to identify a cost vector that induces optimal decisions for the forward problem that are of minimum aggregate distance to the corresponding observed decisions. Any norm can be used in the decision space, but the key distinction is that the imputed optimal decisions must be feasible for the forward problem. A decision space inverse optimization problem is formulated as
-
class
invo.LinearModels.pNorm.
pNorm
(**kwargs)¶ Bases:
object
Formulate a Decision Space (p-norm) method of GMIO.
Parameters: - tol (int) – Sets number of significant digits. Default is 8.
- p (int) – Sets p for lp norm. Can be integer or ‘inf’. Default is 2.
- verbose (bool) – Sets displays. Default is False.
- ban_constraints (list) – A list of constraint indices to force to zero when solving. Default is none.
Example
Suppose that the variables
A
andb
are numpy matrices andpoints
is a list of numpy arrays:model = pNorm(p=2) model.FOP(A, b) model.solve(points) print (model.c)
-
FOP
(A, b)¶ Create a forward optimization problem.
Parameters: - A (matrix) – numpy matrix of shape .
- b (matrix) – numpy matrix of shape .
Currently, the forward problem is constructed by the user supplying a constraint matrix A and vector b. The forward problem is
-
optimal_points
(points)¶ Get the projected optimal points.
Parameters: points (list) – list of numpy arrays, denoting the observed points. Returns: list of numpy arrays denoting the imputed optimal points. Return type: truePoints (list) Once an inverse optimization problem is solved and the forward model is completed, you can take a collection of observed data points and get the ‘imputed’ optimal points.
-
rho
(points)¶ Solves the goodness of fit.
-
solve
(points, **kwargs)¶ Solves the inverse optimization problem.
Parameters: points (list) – list of numpy arrays, denoting the (optimal) observed points. Returns: the optimal value of the inverse optimization problem. Return type: error (float) To solve a decision space inverse optimization problem, we solve the following convex problem for every constraint
Module contents¶
Inverse optimization for Linear Models
This module contains a collection of linear inverse optimization models. It includes the ones covered by generalized inverse optimization, including the absolute and relative duality gap, and p-norm methods. As we add new models, we should include them in the __main__ file.


Västilän Marathon
Langelmaki FIN
Website: www.vastilanvoima.fi/?ki=fi&sivu=2&alasivut=
Race Winners
(33 runnings)
19 May
2007
20 May
2006
21 May
2005
22 May
2004
17 May
2003
18 May
2002
19 May
2001
20 May
2000
22 May
1999
23 May
1998
1997
1996
1995
1994
1993
1992
1991
1990
1989
1988
1987
1986
1985
1984
Notes: 1984 was the inaugural year.
21 May
2016
3:14:29
Kimmo Heikkinen (FIN)
4:20:41
Outi Ojala (FIN)
14 May
2015
3:15:53
Markus Ilva (FIN)
4:12:50
Erja Vaali-2
17 May
2014
3:17:26
Petri Haavisto (FIN)
18 May
2013
3:18:15
Reijo Rajahalme (FIN)
4:11:25
Erja Vaali (FIN)
19 May
2012
3:07:29
Janne Isoaho (FIN)
4:00:03
Nina Nyvsnen (FIN)
21 May
2011
3:09:27
Harri Sippola-5
3:52:09
Paivi Nyvsnen (FIN)
22 May
2010
2:58:49
Harri Sippola-4
3:36:29
Marjo Matoniemi-3
23 May
2009
3:03:07
Harri Sippola-3
4:38:02
Satu Lauren (FIN)
17 May
2008
2:56:58
Harri Sippola-2
3:40:43
Sari Kallio (FIN)
2:53:11
Harri Sippola (FIN)
3:38:29
Annukka Riuttamaki (FIN)
2:45:50
Eero Luhtala (FIN)
3:45:24
Maarit Tuomisalo (FIN)
2:58:25
Hannu Aikas (FIN)
4:01:02
Paivi Isokoski (FIN)
2:54:40
Kai Saarinen-6
3:32:53
Marjo Matoniemi-2
2:58:25
Kai Saarinen-5
3:32:17
Marjo Matoniemi (FIN)
2:56:25
Kai Saarinen-4
3:32:54
Aino-Inkeri Junkkonen-2
2:49:17
Kai Saarinen-3
3:20:40
Aino-Inkeri Junkkonen (FIN)
2:53:28
Kai Saarinen-2
---
n/a
2:56:57
Jaakko Rouhiainen (FIN)
---
n/a
2:47:23
Kai Saarinen (FIN)
---
n/a
---
n/a
---
n/a
---
n/a
---
n/a
---
n/a
---
n/a
---
n/a
---
n/a
---
n/a
---
n/a
---
n/a
---
n/a
---
n/a
---
n/a
---
n/a
---
n/a
---
n/a
---
n/a
---
n/a
---
n/a
---
n/a
---
n/a
---
n/a
---
n/a
---
n/a
---
n/a
---
n/a
---
n/a
Most Wins
(1984/date)
Men
6
3
Kai Saarinen (FIN)
1998,2000-04
Women
Marjo Matoniemi (FIN)
2003-04,2010
Prize Money (ARRS qualified runners only)
No information on prize money has been received for this race.
Race Time Bias
Insufficient data to calculate the race time bias.
Competitive Level
Insufficient data to calculate the competitive level.
Quality Performances
Men No men under 2:20 Women No women under 2:50
Last Updated on 29 May 2016
Contributors: Klaas Loonstra (50), Juraj Gasparovic (34)


Er. VARUN KUMAR
Front End Ninja
Featured Work
MOCK-up-article
Click here!
Animal trading card
Click here!
Build portfolio site
Click here!


Flash flooding, rare hail strike Southwest before storm moves east
A storm is pounding the Southwest, bringing rare hail to Los Angeles and flash flooding to Arizona, before it moves east across the country.
Interested in Weather?
Add Weather as an interest to stay up to date on the latest Weather news, video, and analysis from ABC News. Weather Add Interest
Flash flood watches will be in effect in the Southwest through Wednesday night as the storm continues to bring rain to typically flash flood-prone areas.
Meanwhile, the storm is set to bring snow to parts of the Rockies. Some areas could see 10 to 20 inches of snow, with some localized snowfall totals up to 30 inches by Friday.
As the storm moves east Wednesday night into Thursday, rain will impact a stretch of the country from the desert Southwest all the way through the southern Great Lakes.
Parts of Texas, southern Oklahoma and extreme western Arkansas could see strong storms through Thursday afternoon.
As the system continues east, some parts of Arkansas could see rainfall totals of over four inches by midday Friday.


---
layout: post
title: ! 'Bootstrapping: finding the missing link'
categories:
- Pharo
tags:
- Bootstrap
- crazy project
- GSOC
- Image
- Pharo
- Smalltalk
- software-development
status: publish
type: post
published: true
meta:
publicize_results: a:2:{s:7:"twitter";a:1:{i:93753233;a:2:{s:7:"user_id";s:12:"GuillePolito";s:7:"post_id";s:18:"208994882394669056";}}s:2:"fb";a:1:{i:1479284455;a:2:{s:7:"user_id";s:10:"1479284455";s:7:"post_id";s:13:"4126270323287";}}}
_wpas_done_twitter: '1'
_wpas_done_fb: '1'
_wpas_done_linkedin: '1'
tagazine-media: a:7:{s:7:"primary";s:0:"";s:6:"images";a:0:{}s:6:"videos";a:0:{}s:11:"image_count";s:1:"0";s:6:"author";s:8:"35633512";s:7:"blog_id";s:8:"36660125";s:9:"mod_stamp";s:19:"2012-06-02
19:06:21";}
_wpas_mess: ! 'Bootstrapping: finding the missing link http://wp.me/p2tOYl-F @PharoProject
#Smalltalk #Bootstrap #GSOC'
reddit: a:2:{s:5:"count";i:0;s:4:"time";i:1368781763;}
_elasticsearch_indexed_on: '2012-06-02 18:53:51'
---
A few months ago I got involved in some crazy project: bootstrapping Pharo. I took some existing code, played with it, hacked it, modified it, understood it. Now I think I have some idea of what is a bootstrap and what are it's advantages. I'll try to give a brief introduction to the project: what is it about, advantages, an overview of the current military secret results, and an insight of what is to come.
I recommend you to have look at my last post (the image dilemma) before reading.
This project is one of the ESUG projects supported this year by the google summer of code program.
What is a Bootstrap
The encyclopedic definition: A Bootstrap of system is a process that can generate the smallest subset of that system that may be used to reproduce the complete one.
I mean, you have an explicit process that can generate a the minimal version of your system.
Ok, easier: You kick yourself to get impulse and start from a better place :).
Then, bootstrapping software systems or languages normally means that you will somehow enhance the original process that created the system.
Some examples to clarify:
- When your computer is turned on, some one has to bootstrap the little program able to load other programs :).
- Generating a development environment with very basic tools will improve your work a lot (when you use your development environment).
- C compiler is written in C. That means that It somehow compiles itself. Of course if you do not like assembly much, reading the C implementation is a great improvement.
- Pharo implements traits and uses them in the core of the system to empower the design.
- A big part of Pharo's VM is written in smalltalk!
The need of bootstrapping Pharo
Did you know the image you download from the pharo website is the same one that comes from years ago? I mean, not the exactly same one, but a binary copy :). The fact is that years ago (yeah, ancient history) god created the first image and it started evolving, one little change after the other, to the Pharo we know today.
Now, as in evolution, we found in Pharo missing links. We do not know how some object became the way it is. Or how it was initialized. The code is simple nowhere, it's a missing link. Also, as years passed, our ancestor became chaotic. It grew in many different uncontrolled and unordered ways. Since the Pharo Project started, one if it's goals was cleaning this mess, but re-modularising and cleaning the system is a hard, long, and bothersome process.
The outputs and advantages of Bootstrapping Pharo will be:
- getting tools to detect problems: bad dependencies, unexistent initializations, code that really do not work but was never executed before.
- This initialization process will be explicit and open.
- We will be able to start the next Pharo from scratch, and since we will be able to change this explicit process, our next generation Pharo will be cleaner and fancier. It will be able to acquire easily new features: namespaces/modules, security, remote tools, mirrors.
- But also, since it will allow people to create a custom system, researchers will have an invaluable tool to fulfil their own purposes. They will be able to experiment
Current status of the project
The project has already had a first output, which is the image writer. The image writer is a little tool that traces a graph from an SmalltalkImage object, and deploys that graph into a .image file. I'll talk about this sub project in a future post.
The rest of the code is a military secret yet. Ok, I can give it to you, but you have to be responsible if it blows up on your face :).
The results of the project so far are:
- It can create an Smalltalk image living inside another image.
- This inner/guest image can be written in a new .image file.
- With this approach a small kernel of 1.1MB has been reached.
- SpaceTally runs and prints reports to understand how the space is distributed among objects.
- A tool to detect every uninitialized class variable/class instance variable and references to unexistant globals was developed.
Soon we will have all these public on Pharo Jenkins server.
Next Steps
- Jenkins jobs :)
- Taking jenkins feedback to speed up the cleaning process
- Remodularizaton to get even a smaller kernel
- Maybe some little experiment to bootstrap MicroSqueak and learn from it
- Bootstrap from source code.
I'll try to keep you updated often. BTW, any ideas, critics or suggestions are welcome. I'm not a gurú, I'm just learning, as everyone :).
Saludos!


Order #:
1297/2018
Customer:
Assu Koech
Order Date:
2018-12-19
Code
Item
Price
Quantity
Total
WG8623
WONDER GRO JAMAICAN CASTOR OIL COND 12OZ
850
1
850
Total:
850
APPROVE/REJECT
Please
DO NOT
click, if you did not request this email. Email us at
info@kajejeltd.co.ke


Summary
- Created a year-long content marketing plan, including corporate blog posts and a weekly newsletter to increase awareness of the service and cultivate potential users.
- 1 in 20 conversion rate to sales qualified lead through information campaign, conducted by telephone to veterinary clinics.
- Optimized use cases of the platform, troubleshooting, testing and reducing major issues.
Tools used
- Hubspot
- Wordpress
- PHP
- MailChimp
Notes
This was my first rotation as part of the BETS program, which can be found here.


Edit your profile
Username*
Email
Firstname*
Lastname*
Phone Number
Birthday
Country
City
Password
Address
Repeat Password


Here at π Pizza, we are math geeks first and pizza nerds second.
Through rigorous calculation, we create a π for you that fits your exact specifications. To the diameter!


WITNESS LIST Land & Resource Management Committee April 2, 1997-3:00P HB 190 For: Powers, Bill (TX Farm Bureau) Small, Ed (TX Cattle Raisers Assoc) Turner, Rep. Bob (House Dist.) Against: Snyder, Ed (City of Plano & TML) On: Cuellar, Robert (TXDOT) HB 224 For: Pitts, Rep. Jim (House Dist.) Against: Bland, R. Ivan (TX Municipal League) Snyder, Ed (City of Plano & TML) On: Scoggins, Roy A. (himself) HB 248 For: Kubiak, Rep. Dan (House Dist.) Against: Bland, R. Ivan (TX Municipal League) Mann, James (TX Pipeline Assoc.) Snyder, Ed (City of Plano & TML) HB 249 For: Kubiak, Rep. Dan (House Dist.) Against: Bland, R. Ivan (TX Municipal League) On: Cuellar, Robert (TXDOT) HB 1609 For: Blizzard, Roy (himself) Brandes, Robert (himself) Kam, Thomas (himself) Powers, Bill (TX Farm Bureau) Shaw, Shirley (Comanche Canyon Ranch) Townsend, Chuck (himself) Turner, Rep. Bob (House Dist.) Vaught, John (himself) Vaught, Kimberly (herself) Against: Barrera, Alma (herself) Beall, Jon (himself) Bristol, Valarie (Travis Co. Commissioner) Dochen, Sandy (herself) Royder, Scott (Sierra Club) Tate, Kerry (Greater Austin Chamber) Walden, Don (himself) Williams, John (Audaban Society) On: Graham, Gary (TX Parks and Wildlife) HB 1670 For: Carter, Jim (City of Trophy Club) Dunn, Jerry J. (himself) Turner, Frank (City of Plano) Wohlgemuth, Rep. Arlene (House Dist.) HB 1794 For: Gaines, Jimmy (TX Landowners Council) Against: Bland, R. Ivan (TX Municipal League) Snyder, Ed (City of Plano & TML) On: Cuellar, Robert (TXDOT) HB 2566 For: Bosse, Rep. Fred (House Dist.) On: Cuellar, Robert (TXDOT) Scoggins, Roy A. (himself) HB 2740 For: Barron, Michael M. (himself) Beavers, Walker (himself) Betz, Raymond (himself) Gaines, Jimmy (TX Landowners Council) Small, Ed (TX Cattle Raisers Assoc) Uher, Rep. Tom (House Dist.) Weinstein, Bernard (himself) Willmann, Karl D. (himself) Against: Bland, R. Ivan (TX Municipal League) Snyder, Ed (City of Plano & TML) On: Cuellar, Robert (TXDOT) HB 2847 For: Berlanga, Rep. Hugo (House Dist.) Utter, Tom (City of Corpus Christi) Williams, C. Bert (himself) HB 3082 For: Bowers, Robert A. (City of Port Arthur) Calhoun, Frank W. (himself) Douglas, Tommy C. (Galveston Bay Found.) Edson, Christopher (himself) Gray, Rep. Patricia (House Dist.) Hoffman, Joan E. (himself) Johnson, John (himself) Mauro, Garry (TX General Land Office) McNiell, Alan (himself) Rapp, Peggy (Seascape Owners Assoc.) Stuart, Ed (himself) HB 3178 For: Lewis, Rep. Ron (House Dist.) Against: Sokolow, Mark (City of Port Arthur) HB 3180 For: Lewis, Rep. Ron (House Dist.) Against: Sokolow, Mark (City of Port Arthur) HB 3338 For: Beavers, Walker (himself) Menke, Charles (himself) Against: Mann, James (TX Pipeline Assoc.) Snyder, Ed (City of Plano & TML) HB 3339 For: Beavers, Walker (himself) Against: Snyder, Ed (City of Plano & TML)


The Window to the Brain implants are produced by densifying Yttria-Stabilized Zirconia (YSZ) nanopowder into a bulk ceramic material. To accomplish this densification, while still maintaining a nanocrystalline microstructure, we use a process called Current-Activated Pressure-Assisted Densification (CAPAD). CAPAD allows us to maintain the nanocrystalline structure by reducing the densification time (on the order of 10 minutes), thereby preventing grain growth. This is important for a few reasons: mechanically it allows us to maintain the nanocrystalline structure which results in increased toughness, while optically, the nanocrystalline structure is the reason why our material is transparent while conventional micro-crystalline YSZ is opaque. The nano-sized grains and pores between these grains result in less scattering of light compared to microcrystalline grains and pores. This reduction in light scattering allows more light to pass through the sample, imparting transparency.
In addition to grain size, the composition of the material also has a significant impact on several of its properties. We are fabricating several different compositions of YSZ, including 3 molar% Yttria, 6 molar%, and 8 molar%. Different compositions have different benefits, such as increased transparency, toughness, and aging resistance, and thus the optimal WttB formulation will need to balance these competing factors.


Broer
Broer is a movie starring Koen De Bouw, Titus De Voogdt, and Koen De Graeve. The extravagantly rich Grace wants to revive a 20-year old love affair. Mark travels to Ireland, together with pushy Ronnie and pretends to be his deceased...


{{mainName}} COVID-19 Cases
* Most recent partial week removed due to incomplete data.
Customize
{{areaName}}
(With at least {{minCasesInArea}} {{selectedData}})
This interactive visualization charts the new {{selectedData.toLowerCase()}} of COVID-19 vs. the cumulative {{selectedData.toLowerCase()}}. When plotted in this way, exponential growth is represented as a straight line that slopes upwards. We're all in this together. Learn more.
To learn more about this graph, watch this video created by Minute Physics.
Note: The x-axis of this graph is not time, but is instead the total number of cases or deaths.
Tips: Press Space (or the play button) to Play/Pause. Press +/- keys (or drag the slider) to see daily changes. Hover over the graph for more info. Drag your mouse to zoom in, doubleclick to zoom back out. And don't forget to wash your hands!
Hide(With at least {{minCasesInArea}} {{selectedData}})


AMNB interface.
More...
#include <xpcc/communication/amnb/interface.hpp>
|
| static void | initialize (int seed) |
| | Initialize the interface. More...
|
| |
| static bool | sendMessage (uint8_t address, Flags flags, uint8_t command, const void *payload, uint8_t payloadLength) |
| | Send a message. More...
|
| |
|
template<typename T > |
| static bool | sendMessage (uint8_t address, Flags flags, uint8_t command, const T &payload) |
| | Send a message.
|
| |
|
static bool | sendMessage (uint8_t address, Flags flags, uint8_t command) |
| | Send a empty message.
|
| |
| static bool | isMessageAvailable () |
| | Check if a message was received. More...
|
| |
|
static uint8_t | getTransmittedAddress () |
| |
|
static uint8_t | getTransmittedCommand () |
| |
|
static Flags | getTransmittedFlags () |
| |
|
static uint8_t | getAddress () |
| |
|
static uint8_t | getCommand () |
| |
|
static bool | isResponse () |
| |
| static bool | isAcknowledge () |
| | Check if the message is an ACK or NACK. More...
|
| |
| static bool | isBusAvailable () |
| |
| static bool | messageTransmitted () |
| | Check if there has been an error during transmission. More...
|
| |
| static const uint8_t * | getPayload () |
| | Access the data of a received message. More...
|
| |
| static uint8_t | getPayloadLength () |
| |
|
static void | dropMessage () |
| | End procession of the current message.
|
| |
| static void | update () |
| | Update internal status. More...
|
| |
template<typename Device, uint8_t PROBABILITY = 50, uint8_t TIMEOUT = 4>
class xpcc::amnb::Interface< Device, PROBABILITY, TIMEOUT >
- Author
- Niklas Hauser
◆ initialize()
template<typename Device , uint8_t PROBABILITY = 50, uint8_t TIMEOUT = 4>
- Parameters
-
| seed | for the random number generator |
◆ sendMessage()
template<typename Device , uint8_t PROBABILITY = 50, uint8_t TIMEOUT = 4>
| static bool xpcc::amnb::Interface< Device, PROBABILITY, TIMEOUT >::sendMessage |
( |
uint8_t |
address, |
|
|
Flags |
flags, |
|
|
uint8_t |
command, |
|
|
const void * |
payload, |
|
|
uint8_t |
payloadLength |
|
) |
| |
|
static |
- Parameters
-
| address | receiver address |
| flags | see xpcc::amnb::Flags |
| command | command byte |
| *payload | data field |
| payloadLength | size of the data field |
◆ isMessageAvailable()
template<typename Device , uint8_t PROBABILITY = 50, uint8_t TIMEOUT = 4>
◆ isAcknowledge()
template<typename Device , uint8_t PROBABILITY = 50, uint8_t TIMEOUT = 4>
- Returns
true
if the message is an ACK, false
on NACK.
◆ isBusAvailable()
template<typename Device , uint8_t PROBABILITY = 50, uint8_t TIMEOUT = 4>
- Returns
true
you are allowed to send right now
◆ messageTransmitted()
template<typename Device , uint8_t PROBABILITY = 50, uint8_t TIMEOUT = 4>
- Returns
true
if the message has been transmitted without collision.
◆ getPayload()
template<typename Device , uint8_t PROBABILITY = 50, uint8_t TIMEOUT = 4>
◆ getPayloadLength()
template<typename Device , uint8_t PROBABILITY = 50, uint8_t TIMEOUT = 4>
- Returns
- Size of the received message. Zero if no message is available at the moment.
◆ update()
template<typename Device , uint8_t PROBABILITY = 50, uint8_t TIMEOUT = 4>
Has to be called periodically. Decodes received messages.
The documentation for this class was generated from the following file:
- communication/amnb/interface.hpp


GALLERY: Trees turn historic Cannock church into winter wonderland
More than 90 Christmas trees have transformed a historic church in Cannock into a festive fantasy.
by Harriet EvansThe annual Christmas tree festival at St Luke's Church is set to attract hundreds of people through its doors to see the magical displays.
It was originally set up by the church's treasurer as a way to raise additional funds for the church.
Now in its ninth year, the event sees community groups, charities and businesses decorate a tree to go on display over three days with money raised supporting charitable causes and St Luke's Church.
Janet Bailey, 76, festival co-ordinator, said: "I've been a member of the church for many years and have been involved in the festival since it started and each year it's got bigger and brighter with more people getting involved.
"We've already had over 100 people visit us when we opened the church this morning.
"It's a way to get people to come into church who would not normally come, it's not religious in any way, we just wanted to get the community together and involved in what we do."
Some of the groups who have a tree at this year's festival include Guides, Friends of Cannock Chase, Acorns Children's Hospice, Marie Curie and local schools.
A number of them have decorated their trees with a twist, with The British Legion's tree being covered in red poppies and Redhill Primary School's tree being made entirely from donated food items.
Preparations for the festive extravaganza started much earlier in the year, Janet added: "We start planning and designing the theme in the summer and as soon as the Christmas items are in the shops I go out and buy them so we don't miss out.
"There's a team of a dozen of us who are all members of the church who organise the festival, this year it has taken us three days to get all of the decorations up."
The whole church has been transformed into a winter wonderland, with this year's theme being frozen, to coincide with the Disney sequel's release.
Sticking with the theme, the church's porch has become a frozen forest and is covered in icey decorations and white lights.
The festival is free of charge, but donations are welcome.
It will be held at St Luke's until November 23 and is open from 10:30am to 4:30pm each day.


We exchange tables!
- envisioneer clicks-and-mortar e-business
- incubate e-business architectures
- innovate enterprise relationships
- expedite seamless web services
- innovate innovative channels
- strategize ubiquitous functionalities
- matrix world-class metrics
- revolutionize sexy relationships
- embrace one-to-one methodologies


--- layout: post-classic title: "USB Powered Speaker Mod" desc: "If you have a portable speaker laying around that uses AAA/AA batteries why not same the money and power it with USB" thumbnail: "72362c77469b2cc55764bd0d9a07d52b.jpg" categories: article tags: {} ---
Well let's first note that this mod will properly only work if the voltage is correct. In my case the speaker needed 3x1.5V=4.5V AAA batteries, which happens to be pretty close to the 5V from a standart USB cable.
Remember anything you read on the so called ""Internet" is on your own responsibility.
You probably don't want to permanently solder the USB cable to the speaker so grab two empty batteries.
Usually the batteries are connected in a series so you only need the first and last connector. Test to find which once are the correct once, and then just solder the cables to the batteries and put the batteries in the speaker.
For added convenience if your speaker has a backplate that covers the batteries, just use your soldering iron to melt a USB sized hole in the backplate.


http://securityxploded.com/mail-password-decryptor.php GUI
http://securityxploded.com/outlookpassworddecryptor.php GUI
http://securityxploded.com/email-password-dump.php CMDline
Email Password Dump is the free command-line based all-in-one tool to instantly recover all your Email passwords from popular email clients and other desktop applications.
Currently it can recover your lost email passwords from following applications,
Microsoft Outlook Express
Microsoft Outlook 2002/XP/2003/2007/2010/2013
Mozilla Thunderbird
Windows Live Mail 2012
IncrediMail
Opera Mail
The Bat!
Foxmail v6.x - v7.x
Windows Live Messenger
MSN Messenger
Google Talk
GMail Notifier
PaltalkScene IM
Pidgin (Formerly Gaim) Messenger
Miranda Messenger
Windows Credential Manager
It automatically discovers installed applications on your system and recovers all the stored passwords for email accounts like Gmail, Yahoo Mail, Hotmail, Windows Live Mail etc
By default it dumps all the recovered passwords to console. It also allows you to save the email passwords to TEXT file.
Email Password Dump works on both 32-bit & 64-bit platforms starting from Windows XP to new Windows 10 version.
How to use?
Email Password Dump is very easy to use tool. It is command-line/console based tool, hence you have to launch it from the command prompt (cmd.exe).
Here is the simple usage information
EmailPasswordDump.exe [-h | -f <output_file_name>]
Examples of Email Password Dump
//Dump all the email passwords to console
EmailPasswordDump.exe
//Dump all the email passwords to a file "c:\passlist.txt"
EmailPasswordDump.exe -f "c:\passlist.txt"
//Show this help screen
EmailPasswordDump.exe -h
Make sure to increase the screen width of your command prompt to see the output properly.
Screenshots
Screenshot 1: 'Email Password Dump' displaying all the recovered mai passwords from Outlook, Windows Live Mail, GTalk, Thunderbird etc