class: center, middle, title # Explicit Duck Typing
with Kotlin Inline Classes ## Hugh Greene
### April 2019 .footnote[Presentation made with [remarkjs](https://remarkjs.com/).] --- # Duck Typing -- No, it's not an instruction ;-P -- It's about how you know what type of data/objects you're using in your code. -- > "If it walks like a duck
> and it quacks like a duck
> then it must be a duck!" See [Wikipedia](https://en.wikipedia.org/wiki/Duck_typing) for more. -- In code terms -- > "If I try to access a method or property on an object
> and the object has a matching method or property
> then the object can do what I want!" --- # Duck Typing The "matching" is in terms of name,
and maybe argument and return types,
as discovered at runtime. -- As seen in * Python * JavaScript * Ruby * Groovy * ... --- # Structural Typing Duck typing is similar to [structural typing](https://en.wikipedia.org/wiki/Structural_type_system),
which checks all the required matches at compile time. -- As seen in ... * C++: template expansion * Go: interfaces --- # Duck Typing in Action ```Python class Duck: def fly(self): print("Duck flying") class Airplane: def fly(self): print("Airplane flying") ``` -- ... but then ... ```Python class Trouser: def fly(self): return db.componentRef(self.id, "fastening") class JoggingTrouser( Trouser ): def fly(self): return None ``` Hmm ... --- # Duck Typing in Action "Doesn't happen if you use Bounded Context!" or "Just rename to avoid clashes!" Okay ... ```Python class Trouser: def `zip`(self): return db.componentRef(self.id, "fastening") class JoggingTrouser(Trouser): def `zip`(self): return None ``` -- ... and then ... ```Python class Address: # in 3rd-party library def zip(self): return store.getField(self.id, "area_code") ``` --- # Duck Typing in Action Or ... ``` file.close() ``` -- ``` window.close() ``` -- ``` ledger.close() ``` -- ... or ... ``` list.add(item) ``` -- ``` map.add(entry) ``` -- ``` integer.add(operand) ``` --- # Nominal Typing Two types are the same _if and only if_ their names refer to the same declarations. One type is a subtype of another _if and only if_ its definition says that it is. -- As seen in * C++ classes/structs * Java types * C# types * Rust types/traits * ... --- # Programming to Interfaces Nominal type systems point you to giving all your "ducks" the same interface. ```C# interface IDuck { void fly(); } // Is a duck class Duck : IDuck { public void fly() { print("Duck flying"); } } // Is a duck, for our purposes class Airplane : IDuck { public void fly() { print("Airplane flying"); } } // Clearly not a duck class Trouser : IClothing { String fly() { return db.componentRef(self.id, "fastening"); } } ``` --- # Adapter Pattern What if you want a class to implement an interface but you can't edit its source? Adapter Design Pattern: * Wrap it in a new type which _does_ implement the interface. ```C# interface IDuck { void fly(); } // Is a duck class FlyingBall : IDuck { private Ball ball; public FlyingBall(Ball ball) { this.ball = ball; } public void fly() { ball.parabolicArc(); } } ``` --- # Adapter Pattern: Caveats BUT * You have to take time and space to construct the wrapper object. * You can't pass the wrapped object to APIs which expect the original type unless you can also implement the interfaces it implements. ```C# interface IDuck { void fly(); } // Is a duck ... and a ball. class FlyingBall : IDuck, IBall { private IBall ball; public FlyingBall(IBall ball) { this.ball = ball; } public void fly() { ball.parabolicArc(); } public void parabolicArc() { ball.parabolicArc(); } } ``` --- # Kotlin Inline Classes Create a new type around an existing type, with minimal runtime overhead. * Underlying type is used where class type is used at compile time. * Wrapper object is auto-created if an object is referenced * via an interface * via a generic type variable * as a nullable type (`SomeType?`) * In JVM-based Kotlin, underlying type is used in signatures. * Method names are mangled to distinguish overloads. --- # Kotlin Inline Classes: Durations ``` interface Duration { val asSeconds: Long val asMinutes: Long val asHours: Long } const val SECONDS_PER_MINUTE: Long = 60 const val MINUTES_PER_HOUR: Long = 60 inline class Seconds(override val asSeconds: Long) : Duration { override val asMinutes: Long get() = asSeconds / SECONDS_PER_MINUTE override val asHours: Long get() = asMinutes / (SECONDS_PER_MINUTE * MINUTES_PER_HOUR) } inline val Long.seconds get() = Seconds(this) inline val Int.seconds get() = this.toLong().seconds val MO = 2.seconds ``` --- # Kotlin Inline Classes: Adapter Pattern Given Java definition ```Java public interface Ball { void parabolicArc(); } ``` you can do this in Kotlin: ``` interface Duck { fun fly() } `inline` class FlyingBall(private val ball: Ball) : Duck, Ball `by ball` { fun fly() { ball.parabolicArc(); } } fun javaInteropExample() { val myBall = FlyingBall(JavaBallFactory.getBall()) myBall.fly() JavaBallFactory.repair(myBall) // will call repair(Ball) in Java } ```


THE OPPOSITE OF SEX (1998) A Film Review by Ted Prigge Copyright 1998 Ted Prigge
Writer/Director: Don Roos Starring: Christina Ricci, Martin Donovan, Lisa Kudrow, Ivan Sergei, Lyle Lovett, Johnny Galecki, Colin Ferguson
Love. Sex. Motherhood. Matrimony. Obsession. These, along with others, are just some of the American ideals that are given a good skewering in "The Opposite of Sex," a film that is as hilarious as it is blunt about life, and is as edgy as it is trashy. We have here a refreshing, amazingly acted, and sometimes even romantic comedy that holds more outrageous twists and selish and/or shallow characters than the entire run of "Melrose Place" ever will, and makes itself extremely entertaining thanks to a fresh format and a plot that just never stops becoming more and more weird.
The key to the whole film is that at some point, all of the characters becomes selfish in one way or another, all because of ideals they hold higher than anything else.  Two catches: she's played to perfection by Christina Ricci, who is finally coming into her own as a serious actress by destroying her childhood movie career (and sucessfully); and she's our friendly narrator for the entire duration of the film.
The film is just jam-packed with plot, so here's a quick run-down: Deedee runs away from home with her one-testicled Christian-as-hell boyfriend following the death of her tryannical stepfather, and ends up ditching him so she can stay with her wealthy half-brother, Bill (Martin Donovan), an openly gay school teacher. She soon seduces his young dim live-in lover, Matt (Ivan Sergei), who allegedly impregnates her after a couple romps in the sack, and upon Bill's discovery of their tryst, the two hike off with $10000 of Bill's. That's only in the first fifteen minutes.
I won't reveal much more, but I will reveal some of the important characters in the story, the most notable being Lucia (a non-dim Lisa Kudrow), a bitter shrew who's opposed to sex and is friends with Bill because her brother, Tom, was Bill's boyfriend for years until his sorta-recent death, leaving the two in different forms of mourning. Also on the character list is Carl (Lyle Lovett), the lonely local sheriff who's forced to investigate Bill because of molestation charges brought on by a gay ex-pupil of his, Jason (Johnny Galecki), yet another weird character in the film who's funniest moment comes towards the beginning when his pelvic skwirming is explained as a "new piercing."
As the 100 minutes of the film fly by, covering everything from a sloppy stakeout to even a murder and a birth, this film completely trashes every ideal that its characters bring up, all skewered by our lovely narrator, Deedee, who's cynicism is so seductive that some scenes I almost prayed for her to come in with obnoxious commentary...and she did. Two characters will be discovering they are finally in love and Deedee will suddenly come onto the soundtrack and say "Yuck." Just what we were thinking. Deedee gives the film the exact feel it is going for, that of our reaction to people's bullshit actions at that point in our lives when everything seems phony. Like Holden Caulfield, Deedee is convinced that everyone is not being true to themselves, and that they are the only ones in the entire world who are actually not lying to everyone else, even when she's twisting people's arms and screwing people over. She's just being true to her nature, after all.
Nevertheless, the characters in this film who are not Deedee are for the most part likable, especially Bill, the poor guy who's career and basically entire life are trampled over by the results of Deedee's actions, but who still retains his dignity and respect. And the film even boils down and finds depth in the character of Lucia, who's at first just a bitch with a whole bunch of great one-liners up her sleeve, but then discovers everything she didn't know in the first place by finding love with the last person in the cast you'd think would be a suitable mate.
 She comes off as a lot like Linda Fiorentino in "The Last Seduction," and is played with the same amount of talent by Ricci, who has finally come across as one of the best younger actresses around, and one of the few, like Jodie Foster, to make smart career moves by starring in risky movies. Her character, who says in the beginning "I don't have a heart of gold, and I don't grow one later," is almost the tragic character of the film, the one who spoils everything yet learns nothing. Yet by the end, we're still not sure if we want her to grow a heart or not. Would it spoil the movie or wouldn't it?
The film was written and directed by Don Roos, writer of such chick flicks as "Single White Female" and "Boys on the Side," but who has finally struck gold with "The Opposite of Sex," his directorial debut. It has all the edginess and hilarity it needs to suceed, and never comes across as cheap or bitchy. His direction is also extremely competent, and he proves himself a great director of good actors, getting amazing performances from everyone, most especially Donovan and Kudrow, the latter who proves she so much more than the ultimate vapid actress. Even Lyle Lovett's apparent woodiness in acting actually works with his character, who ultimately comes off as sweet. But it's really Ricci's picture, and she embodies her with so much flare that she's impossible to hate or root against, mostly thanks to her narration, which is exactly what we want to hear when things are happening in this film even if they aren't always the human. And weirdly enough, the best thing about this film is that it does eventually allow humanity to seep in without corrupting its integrity.
MY RATING (out of 4): ***1/2
Homepage at: http://www.geocities.com/Hollywood/Hills/8335/
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


Forcing a SuperUser Password Change
How to force a SuperUser to change their password next time they login to the site using the SuperUser Accounts module.
- Navigate to Host > Advanced Settings > SuperUser Accounts.
- Find the required user using a filter or by searching.
- Click the Edit button beside their user account.
- Select the Manage User Credentials tab.
- Click the Force Password Change link. This removes the Force Password Change link, sets the Update Password field to True and displays the "User must update password on next login" message.


{% extends 'templates/checkout/payment_details.html' %} {% load url from future %} {% block payment_details %}
Click on the below icon to use Express Checkout but where the shipping address and method is already chosen on the merchant site.


| Private Arch |
|
Cryptobiotic Soil Crust Cryptobiotic crust is very fragile. One footstep may destroy it. Since it lives everywhere, it is important to stay on trails and not “bust the crust” while at Arches. Cryptobiotic crust grows in places throughout the world. See if you can find it where you live.
|


WSO2 CEP is a lightweight and easy-to-use Open Source Complex Event Processor (CEP) available under the Apache Software License v2.0.
WSO2 CEP 4.2.0 is developed on top of the revolutionary Carbon platform and is based on the OSGi framework to achieve the better modularity for your SOA architecture. This also contains a lots of new features and many other optional components to customize the behavior of the server. Further, if you do not want any of the built in features, you can uninstall those features without any trouble. In other words, this ES can be customized to your SOA needs.
WSO2 Carbon is a component based Enterprise SOA platform. The design of WSO2 Carbon focuses on separating the key functionality of the SOA platform into separate pluggable Carbon components that can be mixed and matched, like customizable building blocks. This allows you to add only the functionality you need to start up, and continue to add product capabilities as your requirements grow. This helps a business to quickly adapt to changes.
OSGi is used as the underlying core modularization technology to build the Carbon platform. The Carbon framework is shipped with Eclipse Equinox by default, but can be supported on Spring dm Server, Felix or Knoplerfish if required. The OSGi technology even allows you to write your business functionality as an OSGi component and deploy it in the existing Carbon platform.
For a quick start on using the WSO2 Carbon platform, the Carbon components are pre-assembled into the following products:
You can assemble your own products by combining components and deploying them in a preferred architecture.
The WSO2 Carbon platform gives maximum flexibility to adapt the middleware to your enterprise architecture, rather than adapt your architecture to the middleware.
WSO2 is a Open Source technology company building Open Source middleware platforms for Web services and SOA. WSO2 delivers integrated middleware stacks based on components developed at Apache, offering industry leading performance and convenience for customers.
Founded in August 2005 by pioneers in Web services and Open Source, WSO2 engineers contribute heavily to many key Apache Web services projects.
Subscribe to the WSO2 newsletter - project updates, events, articles, SOA news and much more.


{% extends "layout.html" %} {% block pageTitle %} GOV.UK prototyping kit {% endblock %} {% block content %} {% import "release2-1/elements.html" as elements %} {% for page in data %} {% for question in page.checkAnswersFull %} {{ elements.backButton(page,question) }} Check your answers Helper details Name Helper name - input here How you know them how you know them - input here Change your answers About you Full name Mr First name input here Middle name input ehre Last name input here National Insurance number JA123456A Date of birth 12/12/1972 Change your answers Your contact details Your address Your address line one input here Your address line two input here Your address line two input here LS1 1LL Where you need letters to be sent to Correspondence address line 1 input here Correspondence address line 2 input here Correspondence address line 3 input here LS1 1CC Phone number 07770 123123 You need to be contacted using a textphone Alternative phone number 07897 234345 Change your answers How you want to be contacted Text message updates Yes Mobile number 07987 345364 Get decision letter in alternative format Yes Other - Additional format, other free text answer input here Get a copy of your completed application to be posted to you Yes Change your answers Nationality and where you live Your nationality Another nationality input here Living in England, Scotland or Wales? Country you live in input here Have you been out of the country for more than 4 weeks in the last 3 years? Yes Change your answers Where you are now Your currently staying in hospital When you started staying there hospital etc start date input here Address Hospital etc address line 1 input here Hospital etc address line 2 input here Hospital etc address line 3 input here LS1 1SS Change your answers Payments from abroad Have you or any of your close family worked abroad or been paid benefits from outside the United Kingdom? Yes Have you or your close family claimed or been paid any benefits or pensions from any of these countries? Yes Have you or your close family worked or paid National Insurance in any of these countries? Yes Change your answers Professionals who know about your condition You agree to us contacting professionals who will share information about your condition with us Professional 1 Their profession Other - Other profession input here Their name HCP 1 name input here Their address HCP 1 address line 1 input here HCP 1 address line 2 input here HCP 1 address line 3 input here LS1 1LL Their phone number 07897 897879 When you last saw them HCP 1 last seen date input here Professional 2 Their profession Community Psychiatric Nurse Their name HCP 2 name input here Their address HCP 2 address line 1 input here HCP 2 address line 2 input here HCP 2 address line 3 input here LS9 9LL Their phone number 07879 789778 When you last saw them HCP 2 last seen date input here ***** Note! HCP Details 3 - 5 will appear here. They have been removed from this example ***** Other professionals who know about your condition. Additional HCP details input here Change your answers Your conditions and disabilities Condition 1 Name of condition condition 1 input here How long has it affected you started 1 input here Condition 2 Name of condition condition 2 input here How long has it affected you started 2 input here Condition 3 Name of condition condition 3 input here How long has it affected you started 3 input here ***** Note! Conditions 4 - 20 will appear here. They have been removed from this example ***** List any other conditions or disabilities you have, for each include when they started to affect you.  Medications 4 - 20 will appear here. They have been removed from this example ***** List any other medication you take. Include how often you take it and the dosage. Additional medications input here Change your answers Managing your medication Your condition affects you: remembering to take your medication making sure you have enough medication getting medication out of the packaging swallowing Medication another way input here When managing your medication: Someone needs to remind you to take it Someone needs to help you take it You rely on aids or something else to help You manage without help, but with difficulty How you manage in another way input here Your condition affects you managing your medication: How often medication input here You manage your medication: In your own words for managing medications input here Change your answers Your treatments and therapies Treatment 1 Name of treatment or therapy Treatment 1 input here When or how often How often 1 input here Treatment 2 Name of treatment or therapy Treatment 2 input here When or how often How often 2 input here Treatment 3 Name of treatment or therapy Treatment 3 input here When or how often How often 3 input here ***** Note! Treatments 4 - 20 will appear here. They have been removed from this example ***** Do you have treatment or therapy at your home address? Yes List any other treatments you have and how often you have them. Additional treatments input here Change your answers Managing your treatment How many hours a week they help you Hours help for treatment input here Why you rely on someone to help manage your treatment or therapy at home Why does someone need to help you manage your treatment or therapy at home - input here How someone helps manage your treatment or therapy at home How does someone help you manage your treatment or therapy at home - Input here Change your answers Side effects Describe the side effects you get Describe the side effects you get and how often you get them. - input here Change your answers Monitoring your condition Do you have a condition that, if not monitored, means you could be at risk or a danger to yourself or others? Yes Change your answers Help monitoring your condition you rely on someone else to help monitor your condition Yes How do they monitor your condition? How do they monitor your condition - input here Why do you rely on someone else to monitor your condition? Why does someone need to monitor your condition - input here Change your answers Information you can send You are sending the following information medical reports care or treatment plans medical test results (including any relevant sight and hearing tests) hospital discharge letters Education, Health and Care Plan (was 'Statement of Special Needs') Other evidence to send input here Change your answers Aids and adaptations Where do you have to use aids or adaptations?  Yes How often is your sight affected? How often are you affected - input here How does your condition affect your sight?  Yes What do you find difficult, or need help with? You need a hearing aid You need two hearing aids You have a cochlear implant You rely on someone to help communicate How they help you - input here You cannot hear at all Explain how you communicate - input here You rely on something else Explain what you rely on - input here How does your condition affect your hearing?  Yes How often is your speech affected? How often are you affected - input here How does your condition affect your speech? Explain how your condition affect your speech. - input here Change your answers Using the toilet Your condition affects you: getting on or off the toilet cleaning yourself controlling your bladder controlling your bowel Using the toilet, in another way - input here When using the toilet: Someone has to encourage you to use the toilet Someone has to help you manage your catheter or stoma You rely on aids or something else to help You manage without help, but with difficulty How do you use the toilet, in another way - input here Your condition affects you using the toilet: How often are you affected using the toilet in your own words - input here You manage to use the toilet on a typical day: In your own words, using the toilet - input here Change your answers Washing yourself Your condition affects you: being motivated to wash knowing when or how to wash getting into or out of the bath or shower washing your feet or legs washing your back washing between your shoulders and waist washing your hair standing or balancing washing yourself, in another way - input here When washing yourself: Someone has to encourage you to wash Someone has to wash you, supervise you or help you You rely on aids or something else to help You manage without help, but with difficulty How do you wash, in another way - input here Your condition affects you washing yourself: Explain how often, washing - input here You manage to wash yourself on a typical day: In your own words, washing - input here Change your answers Getting dressed Your condition affects you: being motivated to get dressed or changed choosing suitable clothes eg for the weather putting on shoes or socks tying shoe laces fastening buttons or using zips fastening a bra putting on jumpers or t-shirts putting on trousers or skirts Getting dressed, in another way - input here When getting dressed: Someone has to encourage you to get dressed or changed Someone has to help you to get dressed or changed You rely on aids or something else to help You manage without help, but with difficulty How do you get dressed, In another way - input here Your condition affects you getting dressed: Explain how often, getting dressed - input here You get dressed or changed on a typical day: In your own words, getting dressed - input here Change your answers Making a hot meal from fresh ingredients Your condition affects you: being motivated to make a hot meal from fresh ingredients understanding how to make a hot meal from fresh ingredients being able to make a hot meal safely chopping or peeling opening tins or jars using a hob using a microwave lifting pans putting food on a plate Preparing food, In another way - input here When preparing and cook a hot meal from fresh ingredients: Someone would have to encourage or remind you Someone would have to supervise you, help you or cook for you You would rely on aids or something else to help You would manage without help, but with difficulty How would you prepare food, In another way - Input here Your condition affects you making a hot meal from fresh ingredients: How often prepare food, input here You would prepare or cook a hot meal from fresh ingredients on a typical day: In your own words, prepare food - input here Change your answers Eating and drinking Your condition affects you: being motivated to eat or drink knowing when to eat or drink knowing how much to eat or drink cutting up food holding cutlery putting food or drink in your mouth chewing food swallowing Eating and drinking, In another way - Input here When eating and drinking: Someone has to encourage or remind you to eat or drink Someone has to supervise or help you to eat or drink You rely on aids or something else to help You manage without help, but with difficulty How eating and drinking - Input here Your condition affects you eating and drinking: How often, Eating and drinking - Input here You eat and drink on a typical day: In your own words, Eating and drinking - input here Change your answers Getting out and walking about Does your condition affect you getting out and walking about? Getting out, How often - Input here How far can you walk without stopping? You cannot leave your home 5 to 20 metres (eg to the street outside your home) 20 to 50 metres (eg to the end of your street) 50 to 100 metres (eg around the supermarket) 100 to 200 metres (eg to the local shop) Over 200 metres (eg around town) Explain in your own words How do you get out and walk about? How, Getting out - input here Change your answers Mixing and communicating with people Your condition affects you: Mixing with people you do not know Mixing with people you know Understanding simple sentences Understanding long or complicated sentences Getting across what you want to say Understanding how people are behaving towards you acting appropriately mixing with people without feeling anxious or distressed Mixing, In another way - input here When mixing with people: Someone has to encourage you to mix with people Someone has to explain things to you Someone has to supervise you You manage without help, but with difficulty How, mixing - input here Your condition affects you mixing with people: How often, mixing - input here You mix with people when you have to: In your own words, mixing - input here Change your answers Planning a local journey You would plan a local journey to somewhere you have never been before: Someone else would have to plan the journey Someone would have to help you understand maps or bus timetables You would manage without help, but with difficulty Planning a journey, in another way - input here You would plan a local journey if you had to: In your own words, planning a journey - input here Change your answers Following a route Your condition affects you: following a route to somewhere you have never been following a route to somewhere you know knowing where to go using public transport asking for help recovering from getting lost dealing with any unexpected changes to the route following directions on a map or sat nav Following a route, in another way - input here When following a route: Someone would have to be with you You would rely on an assistance dog or something else to help you find your way You would manage without help, but with difficulty How, Follow a route - input here You would follow a route if you had to: In your own words, follow a route - input here Change your answers Understanding written information Your condition affects your understanding of: words or simple sentences long or complicated sentences symbols such as pound signs (£) or exclamation marks (!) dates signs, such as safety signs something else How you work out what they mean: Someone has to explain things to you Someone has to remind you what things mean You manage without help, but with difficulty How, understanding written - input here You understand written information on a typical day: In your own words, understanding written - input here Change your answers Dealing with money Your condition affects you: You need to be encouraged to pay bills Understanding bills Budgeting Understanding how much things cost Knowing how much change you should get Overspending Understanding money, in another way - input here When dealing with money: Someone has to explain things to you Someone has to remind you or encourage you to pay bills Someone legally has to deal with money for you You manage without help, but with difficulty How, deal with money - input here You deal with money if you have to: In your own words, deal with money - input here Change your answers Additional information Include anything else that explains how your condition or disability affects you. Additional information - input here Change your answers {{ elements.submit(page,question) }} {% endfor %} {% endfor %} {% endblock %}
You agree to us contacting professionals who will share information about your condition with us
***** Note! HCP Details 3 - 5 will appear here. They have been removed from this example *****
***** Note! Conditions 4 - 20 will appear here. They have been removed from this example *****
***** Note! Medications 4 - 20 will appear here. They have been removed from this example *****
***** Note! Treatments 4 - 20 will appear here. They have been removed from this example *****


jm-smucker
Businessmodel of JM Smucker
Customer Segments
JM Smucker provides a diverse range of products to a spectrum of customers, including various commercial entities. The Company’s customers can be divided broadly as follows:
- General Consumers, comprising the general consumer population who are served through the Company’s own consumer-facing outlets;
- Retail Customers, food retailers, food wholesalers, drug stores, club stores, mass merchandisers, discount and dollar stores, military commissaries, natural foods stores, consumer foods distributors, and pet specialty stores; and
- Foodservice Customers, foodservice distributors, restaurants, hotels and lodging, schools and universities, and healthcare operators. JM Smucker serves a range of high-profile retail customers, with Walmart its largest customer, accounting for 30% of the Company’s net sales in 2016. During 2016, the Company’s top 10 customers, collectively, accounted for approximately 70% of consolidated net sales.
JM Smucker primarily serves a domestic customer base across the US. The Company does, however, serve international clients, including in Canada, China, and Mexico, with customers in Canada accounting for the majority of international sales.
Value Propositions
JM Smucker provides value to its customers in the following ways:
- Its reputation and industry standing, with the Company established as a leading supplier of consumer food, coffee, and pet products, with a long history as a reliable and efficient provider of high-quality products;
- The strength of its brands, with the Company owning a number of popular, market leading brands across product categories, including Dunkin’ Donuts, Crisco, Pillsbury, and Meow Mix, which are established household names;
- The diversity of its product offerings, with the Company manufacturing and marketing a wide array of products, including coffee, pet food and treats, cooking oil, peanut butter, and baking products; and
- Its domestic and international reach, with the Company serving a large domestic customer base, having a brand presence across all 50 US states, as well as international penetration across markets such as China, Canada, and Mexico. ### Channels
JM Smucker operates a website at www.jmsmucker.com, through which it provides information on its various products, brands, and history. The Company also operates an online store, through which general consumers can purchase a range of JM Smucker products across multiple brands. JM Smucker additionally serves consumers directly through physical retail outlets, notably its chain of Dunkin’ Donuts restaurants and cafes, and its JM Smucker Company Store and Café, which is located in Orville, Ohio.
JM Smucker makes sales to retail and foodservices customers through its in-house direct sales force, which is organised by operating division, as well as geographic region. The Company’s sales force operates out of the Company’s nine sales and administrative offices across the US, and one each in China, Canada, and Mexico. The Company also makes sales to retail and foodservice businesses through a network of brokers and intermediaries.
Customer Relationships
JM Smucker offers a full range of products, across multiple brands and product categories, to consumers on a self-service basis through its online store. This channel enables customers to browse products, make purchase, and schedule deliveries without interacting with members of the Company’s sales teams. The Company also operates largely self-service channels in the form of its Dunkin’ Donuts and JM Smucker retail outlets, where customers can purchase products with limited interaction with sales personnel.
JM Smucker makes retail and foodservice sales through its in-house sales force, the members of which consult directly with customers to establish the details of sales and distribution contracts. Large retail customers, such as Walmart, are afforded their own account management teams to ensure that all their needs are met. JM Smucker seeks to establish long-term relationships with these customers.
JM Smucker offers ongoing support to its customers, providing a range of contact details on its website for its various divisions, offices, and segments. Customers are able to contact support staff online or over the phone in order to receive tailored responses to queries and complaints. Additionally, JM Smucker, and many of its individual brands, operates several social media accounts, including with Facebook and LinkedIn.
Key Activities
JM Smucker is a manufacturer and marketer of branded food and beverage products and pet food and pet snacks.
The Company organises its operations into three reportable business segments: US Retail Coffee, US Retail Consumer Foods, and US Retail Pet Foods. JM Smucker’s US retail market segments produce and sell branded food products to retail outlets across North America, including food wholesalers, drug stores, club stores, mass merchandisers, discount and dollar stores, military commissaries, natural foods stores and distributors, and pet specialty stores.
The Company also operates a non-reportable International and Foodservice segment, which sells products domestically and international to foodservice customers, such as restaurants, hotels, and schools.
Key Partners
JM Smucker operates in collaboration with a range of companies in order to efficiently manufacture, market and distribute its products. These partners include:
- Supplier Partners, comprising suppliers of raw materials and resources, including various commodities and agricultural products that are used in the manufacturing of the Company’s products – including green coffee, grains, peanuts, edible oils, sweeteners, and fruit - as well as materials such as plastic, glass, and cardboard to package the Company’s;
- Service and Vendor Partners, comprising suppliers of various services and tools that are utilised across the Company’s operating segments, as well as companies to which certain functions can be outsourced;
- Channel and Distribution Partners, comprising various sales and distribution intermediaries, including sales agents and brokers, that support the operations of the Company’s sales and marketing teams; and
- Community and Social Partners, comprising a range of non-profits and charitable organisations, with which the Company collaborates on various community and social projects. JM Smucker has partnered with a range of organisation in recent years, including a partnership with The University of Akron UA Business Solutions on technology training projects, a charitable tie-up with Boys and Girls Clubs of America, and sponsorship partnerships with a number of US athletes at the Rio Olympic Games.
Key Resources
JM Smucker’s key resources are its brands and intellectual properties, its raw materials and supply chain, its IT and communications infrastructure, its manufacturing facilities, its distribution infrastructure, its physical and digital sales channels, its partnerships, and its personnel.
JM Smucker’s products are produced under various patents and marketed under trademarks owned or licensed by the Company or its subsidiaries. The Company owns a number of valuable brands, including Dunkin’ Donuts and Pillsbury. Searches of records published by the US Patent and Trademark Office identified a number of patent applications filed in the name of JM Smucker, including applications entitled ‘Package with peanut shaped window ‘, ‘Coated food product’ and ‘Bottle’.
JM Smucker own numerous properties that are key to the success of its operations, notably its manufacturing and distribution infrastructure. This includes 23 manufacturing and processing facilities, and 14 distribution centres across North America, as well as 12 sales and administrative offices across the North America and China.
Cost Structure
JM Smucker incurs costs in relation to the procurement of commodities and materials, the operation of its manufacturing and processing facilities, the maintenance of its IT and communications infrastructure, the operation of its sales and distribution infrastructure, the implementation of advertising and marketing campaigns, the management of its partnerships, and the retention of its personnel.
For the year ended 30th April 2016 JM Smucker recorded cost of products sold in the amount of $4.84 billion, and selling, distribution, and administrative expenses totaling $1.51 billion, including $170.30 million in advertising costs.
Revenue Streams
JM Smucker generates revenue through the production and sale of coffee, consumer food, and pet products. This includes sales made through the Company’s various sales channels, comprising its direct retail and foodservice sales force, its online sales portal, and its physical Dunkin’ Donuts and JM Smucker outlets.
For the year ended 30th April 2016 JM Smucker generated net sales of $7.81 billion, up on the $5.69 billion recorded by the Company the previous year. The Company’s revenue is generated relatively evenly by its three reportable business segments, all of which recorded net sales between $2.2 billion and $2.3 billion for the year. The Company’s International and Foodservice segment recorded $1.05 billion in net sales.


Reports escaped meta characters.
Some RegExp coding styles specify that meta characters should be placed inside a character class,
to make the regular expression easier to understand.
This inspection does not warn about the meta character [
, ]
and ^
,
because those would need additional escaping inside a character class.
Example:
\d+\.\d+
After the quick-fix is applied:
\d+[.]\d+
New in 2017.1


TPIC2PDFTEX(1) Tex Live Manpage TPIC2PDFTEX(1) NAME tpic2pdftex - convert tpic \specials for use by pdftex SYNOPSIS pic -t somefile.pic | tpic2pdftex > somefile.tex Process somefile.tex by pdftex/pdflatex. DESCRIPTION Experimental awk script for conversion of tpic \specials as produced by (groff-)pic into pdfTeX \pdfliteral sections for further processing by pdftex. NOTES Current version: 1.97. tpic \special description see e. g.: Goossens, Rahtz, Mittelbach: The LaTeX Graphics Companion, Addison-Wesley, 1997, pp. 464. BUGS Spline curve shapes not fully authentic (unknown algorithm). Bounding box does not care for line thickness (groff pic feature). Splines might be outside bounding box. Fill color does not work correctly for arrow‐ heads (pic limitation). SEE ALSO pic(1), grap(1), groff(1), awk(1), pdftex(1). GNU 2008-08-01 TPIC2PDFTEX(1)


Motorola RAZR 2019 Passed FCC: Should Come Tomorrow
by Argam ArtashyanRate this post
Recently, PhoneArena published an article about the Motorola RAZR V3, saying it’s the world’s coolest phone. Of course, most of you should remember this popular handset. And agree it was an amazing model that won the world. But there was a serious reason for PA to call it the best handset on the planet. And that’s not difficult to guess the reason is the sales volume. It turns out the company has managed to sell over 130 million units worldwide. As for its successor, we know the new folding screen smartphone is on the way. Today, it passed through FCC. This simply means we already know how it will look and what features it will come with.
From the picture, we can see that the machine adopts the up-and-down folding design. In addition, the front screen of the phone seems to have a bang. The material of the rear shell looks to be carbon fiber.
Honestly, we have seen a number of renderings of the Motorola RAZR. So the FCC photos didn’t bring anything new. But the configuration part is more attractive.
The FCC’s specs table shows it uses a 6.2-6.5 inch 876 x 2142 resolution main screen. But there is a 2.7-inch 800 x 600 sub-screen. Under the hood, the phone carries the Snapdragon 710 processor. In its turn, this handset offers two storage combinations of 4GB + 64GB and 6GB + 128GB. The battery will have a capacity of 2510mAh – 2730mAh. Surprisingly, the price is set to be $1,500. On the one hand, it is quite expensive. But on the other hand, this is a folding screen smartphone. And if compared with other models with such a form factor, it’s quite logical.
The Motorola RAZR 2019 is expected to hit the market as soon as tomorrow.


by Jason Lengstorf
@jlengstorf ·<EMAIL_ADDRESS>Slides: git.io/fem-jamstack-intro
- I like to learn
- I like to teach
- Currently: Netlify
- Formerly: Gatsby, IBM
- Portland, OR
The JAMstack is an approach to web design that emphasizes shipping only static assets.
JAMstack apps allow us to use only a CDN, which lets us skip servers, databases, load balancers, etc.
CDNs are cheap — or even free.
On top of that, the lowered complexity requires less time and effort spent on devops.
Fewer moving parts makes it easier to ship quickly and with confidence.
A simplified stack means a single developer is able to take projects from an idea all the way to deployment.
# Clone the repo
git clone git@github.com:jlengstorf/jamstack-intro.git
# Make sure you’re on the `start` branch
git checkout start
Jason Lengstorf
Follow me on Twitter: @jlengstorf


Please help us by filling out this short questionnaire and tell us what you want out of Nabla! https://goo.gl/forms/i4DYoBj9CW9ASljs1
We would like engage with the community more and plan an online meetup/hackfest!


This light-weight templating package provides flexible and user-friendly value substitution in string templates or template files (e.g. SQL files) at runtime.
| Version: | 0.2.8 |
| Suggests: | testthat, knitr, rmarkdown, dbplyr, magrittr |
| Published: | 2017-10-04 |
| Author: | Bart Smeets |
| Maintainer: | Bart Smeets <bartsmeets86 at gmail.com> |
| BugReports: | https://github.com/bart6114/infuser/issues |
| License: | MIT + file LICENSE |
| URL: | https://github.com/bart6114/infuser/ |
| NeedsCompilation: | no |
| CRAN checks: | infuser results |
| Reference manual: | infuser.pdf |
| Vignettes: |
Getting started |
| Package source: | infuser_0.2.8.tar.gz |
| Windows binaries: | r-devel: infuser_0.2.8.zip, r-release: infuser_0.2.8.zip, r-oldrel: infuser_0.2.8.zip |
| OS X binaries: | r-release: infuser_0.2.8.tgz, r-oldrel: infuser_0.2.8.tgz |
| Old sources: | infuser archive |
| Reverse imports: | clustermq, jug |
Please use the canonical form https://CRAN.R-project.org/package=infuser to link to this page.


Task: Determine Whether the Node is a Parent
Queries
Task: Get the Count of Children
Task: Get the Index of a Given Child
Task: Get the Children
Additions
Task: Add a Child at the Beginning
Task: Add a Child at the End
Task: Replace a Child with Another Child
Task: Replace Multiple Children with Another Child
Task: Insert Child Before a Given Child
Task: Insert Child After a Given Child
Deletions
Task: Remove a Given Child
Task: Remove the Child at a Specified Offset
Task: Remove Children That Meet Specified Criteria
Iterations
Task: Iterate Over Children
Task: Iterate Over Child Indexes
Clones
Task: Clone Deeply


Reports
if
statements which can be simplified to single assignment or
return
statements. For example:
if
(foo())
return true
;
else
return false
;
can be simplified to
return
foo();


|
|
| BELOW ARE THE MAIN MOUTH
EXPRESSIONS USED IN DIALOGUE.


intervention obesity development local interventions childhood physical prevention {border-style px;} #ffffff;} activity school children review study Health healthy process South communities components participants Asian barriers focus programme Birmingham Research context group health importance included Obesity University approach community ethnic existing felt framework identified perceived px; {font-family Group Pallan activities data development. final font-size groups important information literature research understanding BMJ Interventions Obes. Prevention Professionals Table behaviours change complex contextual cultural double; families prevent programmes qualitative resources role stakeholder systematic targeting theoretical time Campbell Childhood FGs MRC Reviews barrier border-color border-width delivery eating family guidance increasing minority national need provision school, solid; specific tailored undertaken {font-style {font-weight Bautista-Castano Centre Doak National Rev. School Summerbell addressed analysis at: bold children's communities, communities. courier; critical developing em; factors faith food gained given highlighted intervention, intervention. iterative mechanisms overweight parental parents parents, prioritised programme. pt;} relating reviews schools shown skills stakeholders use


Usefull data structures implemented using Lua and the LuaJIT FFI.
A deque can insert items at both the beginning and then end in constant time, “O(1)” If you are going to insert things regurarly to the front it is wise to use this class instead of the standard Lua table. Keep in mind that inserting to the back is still slower than a Lua table.
Create a new deque class instance.
| Return type: | Deque class instance |
|---|
Append elements to tail.
Append element to head.
Returns element at tail.
Returns element at front.
Removes element at tail and returns it.
Removes element at head and returns it.
Check if deque is empty.
| Return type: | Boolean |
|---|
Returns the amount of elements in the deque.
Find length of all elements in deque combined. (Only works if the elements have a :len() method)
Concat elements in deque. Only works if the elements in the deque have a :__concat() method.
Get element at position.
| Return type: | Element or nil if not existing. |
|---|
Can be used to replace plain Lua strings where it is of importance to not create temporary strings, and there is little help in the Lua string interning. It is mutable and allows preallocations to be done on intialization. The data stored in a buffer is not handled by the LuaJIT 2.0 GC which in turn circumvents the memory limit.
Keep in mind that this class i “low-level” and giving the wrong arguments to its methods may cause memory segmentation fault. It is NOT protected.
Create a new buffer. May raise error if there is not enough memory available.
| Parameters: | size_hint (Number) – The buffer is preallocated with this amount (in bytes) of storage. |
|---|---|
| Return type: | Buffer class instance. |
Append data to buffer. Keep in mind that defining a length longer than the actual data, might lead to a segmentation fault.
| Parameters: |
|
|---|
Append Lua string to buffer.
| Parameters: | str (String) – The data to append. |
|---|
Prepend data to buffer.
| Parameters: |
|
|---|
Prepend Lua string to the buffer.
| Parameters: | str (String) – The data to prepend. |
|---|
Pop bytes from left side of buffer. If sz exceeds size of buffer then a error is raised. Note: does not release memory allocated.
| Parameters: | sz (Number) – Bytes to “pop”. |
|---|
Pop bytes from right side of the buffer. If sz exceeds size of buffer then a error is raised. Note: does not release memory allocated.
| Parameters: | sz (Number) – Bytes to “pop”. |
|---|
Get internal buffer pointer. Must be treated as a const value. Keep in mind that the internal pointer may or may not change when calling its methods.
| Return type: | Two values: const char * to data and current size in bytes. |
|---|
Create a “deep” copy of the buffer.
| Return type: | Buffer class instance |
|---|
Shrink buffer memory (deallocate) usage to its minimum.
Clear buffer. Note: does not release memory allocated.
| Parameters: | wipe (Boolean) – Optional switch to zero fill allocated memory range. |
|---|
Get current size of the buffer.
| Return type: | Number. Size in bytes. |
|---|
Get the total number of bytes currently allocated to this instance.
| Return type: | Number. Bytes allocated. |
|---|
Convert to Lua type string using the tostring() builtin or implicit conversions.
Compare two buffers by using the == operator.
Concat by using the .. operator, Lua type strings can be concated also. Please note that all concatination involves deep copying and is slower than manually building a buffer with append methods.


Craig McCoy - $whoami
November 29th, 2015
Father, Developer, and nerd.
I'm a web developer in NE Arkansas.
I graduated from a small highschool in NE Arkansas before going on to study Computer Science at ASU. I met my best friend in college, and since I couldn't marry him Sandra & I decided to tie the knot.
I'm an avid reader, mostly enjoying epic fantasy and science fiction. I've been a student of blues guitar for the past year, and though I don't sound good yet it has been a great method of expression.
I play D&D every other weekend with a great group of friends, and enjoy board games of all kinds, as well as PC & console gaming.


Git Background
It's worth understanding the motive of Git and version control systems in general. This section aims to provide you with background on these topics, as well as some general recommendations for those considering using Git.
Note the arrow(s) in the bottom-right corner that controls navigation through the lesson. You may also navigate by pressing ESC and using the arrow keys.
What is Git?
Git is an...
open-source,
distributed,
version control system
designed for speed and efficiency
that supports multiple workflow types
Version Control
Version control is a system that records changes to a file or set of files over time, so
that you can recall specific versions later
- Git-SCM
Think of version control as a time machine that
let's you look at history and go forwards and backwards though it!
Click the down arrow to understand when not to use version control!
When Not to Use Version Control
Any file that can be produced by executing version-controlled code should not be version-controlled itself, as you should be able to reproduce it.
Let the code work for you.
Open-Source
“Git is released under the GNU General Public License version 2.0, which is an open source license. The
Git project chose to use GPLv2 to guarantee your freedom to share and change free software---to make
sure the software is free for all its users.”
Git SCM - About
Distributed
Everything is fast
Every clone is a backup
You can work offine
Distributed
No network needed to...
- Perfom a diff
- View file history
- Commit changes
- Merge branches
- Obtain another revision of a file
- Switch branches
Supports Any Workflow Type
Git supports a variety of workflow types.
Click the down arrow to view some of them!
Distributed
Git vs. SVN
Centralized
Git vs. Subversion
*This is the best-case scenario for SVN – a server with no load with an 80MB/s bandwidth connection to the client machine. In general, many Git operations are typically faster than the equivalent Subversion ones.
Git vs. Subversion
One Pitfall for Git: The Initial Clone
Why is this?
Git clones the entire history.
Subversion checks out the latest snapshot.
The initial clone is typically only performed once though (or at least infrequently).
There are other performance comparisons available between Git and Subversion. Some argue that Subversion has even improved beyond Git in more recent versions. If you're interested in researching this debate further, here are some recommended resources:
Summary of Benefits
| Git | Subversion |
|
|
What are Binary Files?
Binary files are non-text files that require a computer program to interpret how the stored data is formatted. Git relies on text to track changes, so binary files can be problematic.
Images
PDFs
Video
MS Office Products
CAD Drawings
For more information on binary file management, including installation and configuration, visit the Binary Files section.


Find all related issues quickly and easily.
You can use reports or you include a new gadget in your dashboard. Visualize relationships quickly and easily.
TraceabilityX for Jira
You can easily add a traceability gadget to any of your Jira dashboards.
Generate a traceability report from the reports page of your project tab and allow your teams to export it to Excel.
To discover all the functionalities in detail visit the documentation page.
Show all relationships in different formats
TraceabilityX for Jira allows you to customize your project report with linked problems and display them in a table or matrix.
And you choose the format: in a gadget or in a report, in the form of a matrix or in the form of cards.
Our apps are the result of innovation and continuous improvement
with the guarantee of being certified as a Silver Marketplace Partner.
Integrate SonarQube or SonarCloud with Jira. All the information on the quality of the code at your fingertips.
Integrates SonarQube and Confluence. Your code quality metrics at a glance.
Tools for Jira administrators. Streamline work and reduce time for common tasks.


Rape, STD’s, HIV, abortion, pregnancy, contraception, eating disorders, medication, addiction, diseases,circumcision, depression.
break-ups, finding the right person, is it real love, how to date, divorce, relationships with parents, siblings, friends or teachers, sex or no sex, homosexuality, teen dating violence, domestic violence.
paternity, adoption, divorce, legal matters, rape, abuse, domestic violence, human trafficking.
relationship with God, grief, abortion, divorce, hurt, satanism & the occult.
substance dependence ( drugs, alcohol, prescription medication) or behavioural addiction (gambling, pornography, sex, shopping, internet, games, pain, kleptomania, self-harm, food, work, exercise .
home work, speeches, assignments, bullying, relationships.
anger, low self-esteem, eating disorders, homosexuality, self harm, trauma, suicide, rape, trauma, robbery, hi-jacking, depression.


- Cloche
- Planter saucer, small shallow dish or desired platform
- Floral foam oasis
- Ruler
- Spoon
- Floral wire pins or paper clips
- Small plants (from a florist or nursery)
- Moss
- Tweezers
- Other small decorative items (optional)
Glass cloche terrariums are not only appealing to the eye, but they also preserve a bit of nature in your home and serve as a simple, yet beautiful, piece of art. Closed terrariums are easy to care for, as they retain much of their own moisture and provide a warm environment with a consistent level of humidity. You won’t have to water the terrariums unless you see that the walls are not misting up. Small growing plants that don’t require a lot of light work best such as succulents, ferns, moss, even orchids.
Measure the circumference of your cloche and cut the foam oasis about 3/4 inch (2 cm) smaller. Place the foam oasis into a container full of water and allow to soak until it sinks to the bottom. Dig out a hole on the oasis large enough to fit your plant, being careful not to pierce all the way through to the bottom.
Insert your plant into the hole.
You can add various plants if you wish.
Using floral pins, attach enough moss around the oasis to cover it.
Gently place the cloche over the oasis. The glass may push some of the moss upward, exposing some of the foam.
Simply pull down the moss with tweezers or insert more moss to fill in the empty spaces.
You can use any platform you wish. In this case, a small saucer was used.
This particular terrarium rests on a planter saucer and features a small white pumpkin.
This particular terrarium was placed on a wood slice and a little toy squirrel was placed inside to add a little whimsy.
Displayed alone or in a group, these pretty arrangements allow you to add a little nature to your decor or tablescape.


Provides an ASM visitor that constructs a tree representation of the classes it visits. This class adapter can be useful to implement "complex" class manipulation operations, i.e., operations that would be very hard to implement without using a tree representation (such as optimizing the number of local variables used by a method).
However, this class adapter has a cost: it makes ASM bigger and slower. Indeed
it requires more than twenty new classes, and multiplies the time needed to
transform a class by almost two (it is almost two times faster to read, "modify"
and write a class with a ClassVisitor than with a ClassNode). This is why
this package is bundled in an optional asm-tree.jar
library that
is separated from (but requires) the asm.jar
library, which contains
the core ASM framework. This is also why it is recommended not to use this
class adapter when it is possible.
The root class is the ClassNode, that can be created from existing bytecode. For example:
ClassReader classReader = new ClassReader(source); ClassNode classNode = new ClassNode(); classReader.accept(classNode, 0);
Now the content of ClassNode can be modified and then serialized back into bytecode:
ClassWriter classWriter = new ClassWriter(0); classNode.accept(classWriter);
Using a simple ClassVisitor it is possible to create MethodNode instances per-method. In this example MethodNode is acting as a buffer that is flushed out at visitEnd() call:
ClassReader classReader = new ClassReader(source); ClassWriter classWriter = new ClassWriter(0); ClassVisitor classVisitor = new ClassVisitor(ASM7, classWriter) { public MethodVisitor visitMethod(int access, String name, String desc, String signature, String[] exceptions) { final MethodVisitor methodVisitor = super.visitMethod(access, name, desc, signature, exceptions); MethodNode methodNode = new MethodNode(access, name, desc, signature, exceptions) { public void visitEnd() { // transform or analyze method code using tree API accept(methodVisitor); } }; } }; classReader.accept(classVisitor, 0);
Several strategies can be used to construct method code from scratch. The first option is to create a MethodNode, and then create XxxInsnNode instances and add them to the instructions list:
MethodNode methodNode = new MethodNode(...); methodNode.instructions.add(new VarInsnNode(ALOAD, 0)); ...
Alternatively, you can use the fact that MethodNode is a MethodVisitor, and use that to create the XxxInsnNode and add them to the instructions list through the standard MethodVisitor methods:
MethodNode methodNode = new MethodNode(...); methodNode.visitVarInsn(ALOAD, 0); ...
If you cannot generate all the instructions in sequential order, i.e. if you need to save some pointer in the instruction list and then insert instructions at that place after other instructions have been generated, you can use InsnList methods insert() and insertBefore() to insert instructions at a saved pointer.
MethodNode methodNode = new MethodNode(...); methodNode.visitVarInsn(ALOAD, 0); AbstractInsnNode ptr = methodNode.instructions.getLast(); methodNode.visitVarInsn(ALOAD, 1); // inserts an instruction between ALOAD 0 and ALOAD 1 methodNode.instructions.insert(ptr, new VarInsnNode(ALOAD, 0)); ...
If you need to insert instructions while iterating over an existing instruction list, you can also use several strategies. The first one is to use a ListIterator over the instruction list:
ListIterator it = methodNode.instructions.iterator(); while (it.hasNext()) { AbstractInsnNode insnNode = (AbstractInsnNode) it.next(); if (...) { it.add(new VarInsnNode(ALOAD, 0)); } }
It is also possible to convert an instruction list into an array and iterate through array elements:
AbstractInsnNode[] insns = methodNode.instructions.toArray(); for(int i = 0; i<insns.length; i++) { AbstractInsnNode insn = insns[i]; if (...) { methodNode.instructions.insert(insn, new VarInsnNode(ALOAD, 0)); } }
If you want to insert these instructions through the MethodVisitor methods, you can use another instance of MethodNode as a MethodVisitor and then insert instructions collected by that instance into the instruction list. For example:
AbstractInsnNode[] insns = methodNode.instructions.toArray(); for(int i = 0; i<insns.length; i++) { AbstractInsnNode insn = insns[i]; if (...) { MethodNode toInsert = new MethodNode(); toInsert.visitVarInsn(ALOAD, 0); toInsert.visitVarInsn(ALOAD, 1); m.instructions.insert(insn, toInsert.instructions); } }
@since ASM 1.3.3


Virtual Liver Network - www.virtual-liver.de/
myExperiment - www.myexperiment.org
BioCatalogue - www.biocatalogue.org
MethodBox - www.methodbox.org/
Sabio-RK - sabio.villa-bosch.de
CytoScape - cytoscapeweb.cytoscape.org
BioPortal - bioportal.bioontology.org
BioModels - www.ebi.ac.uk/biomodels-main/
JWS Online - jjj.biochem.sun.ac.za/
Pubmed - www.ncbi.nlm.nih.gov/pubmed
CrossRef - www.crossref.org/
FLOT plotting library - code.google.com/p/flot/
Curved Lines plugin for FLOT - github.com/MichaelZinsmaier/CurvedLines
Pdf rendering library - github.com/mozilla/pdf.js
jScrollPane - jscrollpane.kelvinluck.com/
Cytoscape.js - cytoscape.github.io/cytoscape.js/
The scales image zooming a slider was based on source code in a blog post by Mike Thomas as atomicrobotdesign.com/blog/web-development/controlling-html-using-the-jquery-ui-slider-and-links/ and the contribution of Elina Wetsch, the former web developer of SDBV Group at HITS gGmbH.
FamFamFam icon set (flags and silk) - www.famfamfam.com/lab/icons/silk/
Institution icon - iconeden.com/
Test Tube & Flask icons - www.clker.com/clipart-test-tube-icon.html
Crystal Clear Icon Set (LGPL) - www.iconarchive.com/show/crystal-clear-icons-by-everaldo.html
Organism Icon from IconIcon - iconicon.net/?page_id=79
Zoom images - www.lokeshdhakar.com/projects/lightbox2/ Presentation icon(LGPL) - www.mricons.com/icon/785/128/presentation-slides-icon
Strain image - from Wikipedia - en.wikipedia.org/wiki/File:Enterococcus_faecalis20023-300.jpg#file
Waiting icon - FatCow Web Hosting - www.fatcow.com/
Font awesome - fortawesome.github.io/Font-Awesome/


I love to travel. I have been to 10 different countries. One World Cup in Brazil, and one Winter Olympics in South Korea. I enjoy sports, hiking, reading, and gaming. I grew up in New England and have lived in Connecticut, Massachusetts, and Rhode Island before moving to Phoenix, Arizona. I have been married since 2010 and have two fat fur babies named Samson and Frost.


COVID-19/Coronavirus Updates
COVID-19/Coronavirus Updates
April 20, 2020
Information Updates
Visitation and volunteer activities remain cancelled until further notice.
Updates can be found on this page or by calling our information line,<PHONE_NUMBER>.
Active Cases by LocationUpdated daily at 5:00 pm
| Location | Offenders on‑site | Offenders in hospitals | Death of COVID‑19 positive offender | Staff (includes both employees & contractors) |
|---|---|---|---|---|
| Appalachian Men’s CCAP | 0 | 0 | 0 | 0 |
| Augusta Correctional Center | 0 | 0 | 0 | 0 |
| Baskerville Correctional Center | 0 | 0 | 0 | 0 |
| Bland Correctional Center | 0 | 0 | 0 | 0 |
| Brunswick CCAP | 0 | 0 | 0 | 1 |
| Buckingham Correctional Center | 0 | 0 | 0 | 0 |
| Caroline Correctional Unit | 0 | 0 | 0 | 0 |
| Central Virginia Correctional Unit #13 | 49 | 0 | 0 | 2 |
| Chesterfield Women’s CCAP | 0 | 0 | 0 | 0 |
| Coffeewood Correctional Center | 0 | 0 | 0 | 0 |
| Cold Springs CCAP | 0 | 0 | 0 | 0 |
| Cold Springs Correctional Unit #10 | 0 | 0 | 0 | 0 |
| Deerfield Correctional Center (includes Deerfield Work Centers) | 0 | 1 | 0 | 3 |
| Dillwyn Correctional Center | 0 | 0 | 0 | 0 |
| Fluvanna Correctional Center for Women | 0 | 0 | 0 | 1 |
| Green Rock Correctional Center | 0 | 0 | 0 | 0 |
| Greensville Correctional Center (includes Greensville Work Center) | 0 | 0 | 0 | 2 |
| Halifax Correctional Unit | 0 | 0 | 0 | 0 |
| Harrisonburg Men’s CCAP | 17 | 0 | 0 | 0 |
| Haynesville Correctional Center | 47 | 2 | 0 | 2 |
| Haynesville Correctional Unit #17 | 0 | 0 | 0 | 0 |
| Indian Creek Correctional Center | 0 | 0 | 0 | 0 |
| Keen Mountain Correctional Center | 0 | 0 | 0 | 0 |
| Lawrenceville Correctional Center | 0 | 0 | 0 | 0 |
| Lunenburg Correctional Center | 0 | 0 | 0 | 0 |
| Marion Correctional Treatment Center | 0 | 0 | 0 | 0 |
| Nottoway Correctional Center (includes Nottoway Work Center) | 0 | 0 | 0 | 0 |
| Patrick Henry Correctional Unit | 0 | 0 | 0 | 0 |
| Pocahontas State Correctional Center | 0 | 0 | 0 | 0 |
| Red Onion State Prison | 0 | 0 | 0 | 0 |
| River North Correctional Center | 0 | 0 | 0 | 0 |
| Rustburg Correctional Unit | 0 | 0 | 0 | 0 |
| St. Brides Correctional Center | 0 | 0 | 0 | 0 |
| Stafford Men’s CCAP | 0 | 0 | 0 | 0 |
| State Farm Correctional Complex | 0 | 0 | 0 | 2 |
| Sussex I State Prison | 0 | 0 | 0 | 0 |
| Sussex II State Prison | 15 | 2 | 0 | 2 |
| Virginia Correctional Center for Women (includes State Farm Work Center) | 13 | 3 | 1 | 35 |
| Wallens Ridge State Prison | 0 | 0 | 0 | 0 |
| Wise Correctional Unit | 0 | 0 | 0 | 0 |
| Probation & Parole — Eastern Region | n/a | n/a | n/a | 1 |
| Probation & Parole — Central Region | n/a | n/a | n/a | 0 |
| Probation & Parole — Western Region | n/a | n/a | n/a | 0 |
| Administration & Operations | n/a | n/a | n/a | 0 |
| Totals | 141 | 8 | 1 | 52 |
| Total number of offenders who have tested positive This number includes those offenders with active COVID-19 cases, those who have recovered from COVID-19, deaths of COVID-19 positive offenders, and those who have been released from incarceration. | 174 |
Testing and ScreeningLast updated: 12:40 pm, March 30, 2020
- The Virginia DOC is utilizing its COVID-19 Medical Guideline along with an Offender Screening Questionnaire and Medical Evaluation Tool to evaluate and monitor offenders’ health.
- If we have an offender in a state correctional facility who appears to meet the criteria for COVID-19 testing, the procedure is to contact the Virginia Department of Health and follow their guidance regarding testing.
- All offenders being released from the VADOC facilities as they finish their sentences are now screened for COVID-19 on the day of their release.
- There is a separate screening tool for employees. All employees must assess their risk on a daily basis prior to reporting to work.
- All persons entering any VADOC correctional facility will be screened using infrared/temporal artery thermometers (forehead thermometers).
Visitation and Telephone CommunicationLast updated: 3:40 pm, April 16, 2020
- While visitation at correctional facilities is cancelled for now, off-site video visitation, facilitated through Assisting Families of Inmates (AFOI), remains available. JPay and VADOC have worked together to credit each offender’s JPay account with two free JPay stamps per week during this time.
- To help offenders connect with their loved ones during this time, Virginia DOC has worked with GTL, the offender phone service provider, to provide inmates with two free phone calls per week beginning March 19, 2020 through April 29, 2020. The two free calls will be applied to the first two calls the offender makes each week.
-
To assist in preventing the reach of COVID-19 into state correctional facilities, all attorney/authorized attorney representative meetings with offenders will be conducted over the phone until further notice in an attempt to limit the number of persons coming in and out of facilities each day during this pandemic.
These calls will take place through the Offender Telephone System. If an offender’s attorney or authorized attorney representative wishes to have a legal visit with an offender, that attorney/authorized attorney representative must contact the facility regarding the requested date and time of the meeting.
Once a meeting date and time is set, just as with in-person meetings, the institution will facilitate the phone meeting between the offender and the attorney or authorized attorney representative. The offender will place the call over the Offender Telephone System. If you are an attorney or authorized attorney representative who needs to set up a phone meeting with an offender, please contact the offender's facility.
- Because New York is a COVID-19 hotspot, we’ve created a list of visitors from New York who were in our facilities the last weekend we held visitation and are checking with their respective offenders to make sure the offenders aren’t showing any symptoms.
- For the week of March 22–29, offenders sent and received 220,460 emails, had 453,275 phone calls, and completed 1,604 video visits.
Sanitation and Personal Protective EquipmentLast updated: 3:50 pm, April 15, 2020
- The VADOC's extensive Medical Epidemic/Pandemic Sanitation Plan is in place to make certain that all Department facilities ensure accurate sanitation during this pandemic while utilizing appropriate chemicals and approved personal protective equipment.
- There is plenty of soap and water at the facilities, and that remains the best way to keep hands clean.
- Like hospitals and other institutions, the VADOC continues to attempt to order more PPEs (personal protective equipment). However, the nationwide shortage is affecting the VADOC just as it affects everyone else.
- Virginia Correctional Enterprises (VCE) is now manufacturing about 30,000 sneeze/cough guard masks per day. All DOC staff and offenders have been issued VCE masks. These utility masks are available to other local and state government entities, and 34 have placed orders. For example, these utility masks are going to towns and counties, local jails, the Office of the Medical Examiner, State Police, and the Virginia National Guard.
- VCE also manufactures cleaning supplies approved by the EPA for use in combating the coronavirus.
- The VADOC has put in a source request for PPE with VDEM.
-
Sneeze/cough guard masks made by VCE have been provided to each staff member. Staff members are required to wear their VCE masks unless wearing another form of Personal Protection Equipment (PPE) mask. The sneeze/cough guard mask is providing an added level of protection but should not be worn in place of PPE in situations where PPE is required.
All offenders are required to wear their VCE masks at all times unless instructed to remove it by a staff member. The sneeze/cough guard mask should not be worn in place of PPE in situations where PPE is required.
- As of April 8, we have received 170 gallons of alcohol-based hand sanitizer purchased from local distilleries. The majority of this distillery hand sanitizer is for use in our infirmaries.
Facility StaffingLast updated: 11:40 am, March 20, 2020
- There are currently no staffing shortages caused by COVID-19.
- The VADOC continues to plan for every possible contingency. An emergency menu has been developed for use in the event that a corrections facility has food service workers unable to report to work. This menu contains food items that will be centrally ordered.
- The VADOC is working with a temp agency to hire additional nurses for coverage during this pandemic.
Offender Transportation, Intake, and ManagementLast updated: 2:00 pm, April 6, 2020
- As of the Governor’s declaration of a state of emergency, the VADOC suspended offender intake from local jails for 30 days. Offender transfers and movement between VADOC facilities is suspended until further notice.
- Offender medical transports continue as scheduled unless an appointment is cancelled or changed by the outside provider.
- VADOC facilities have moved to modified lockdown in order to minimize contact between groups of offenders from different buildings. Offenders will eat in their pods and go to recreation with their own pod of offenders and will not eat and recreate with offenders from other pods until further notice.
- The VADOC has a plan in place that would allow offender medications to temporarily be kept by the offenders rather than received through the usual pill line in an effort to promote social distancing by cutting down on pill lines. To qualify, each offender patient would have to be interviewed, meet eligibility criteria, and complete a self-med contract. Medications being considered include over-the-counter, non-prescription medications, selected mental health medications, and other medications based on facility need.
- Offenders in dormitory housing have been instructed to sleep head to toe, thereby increasing the breathable space between offenders. Additionally, it has been recommended to offenders that they maintain a six foot distance whenever possible and not sit on anyone else’s bed.
- Offenders releasing from VADOC facilities are now being given a 90-day supply of medicine. Previously, offenders were released with a 30-day supply. In response to the COVID-19 pandemic, we are anticipating that our returning citizens will be experiencing the need for more time to establish care in the community and should socially distance themselves upon release. This includes avoiding medical care for nonessential visits.
- All Probation and Parole districts have adjusted their intake process so that all or a portion of the intake process is set up and completed electronically. If electronic intake is not possible, officers are limited to completing one intake at a time in a manner that meets current sanitation and social distancing guidelines, utilizing Personal Protective Equipment.
Press Releases
- Virginia DOC to Dramatically Increase COVID-19 Testing of Inmates
- Virginia Sees First Incarcerated Offender Death Related to COVID-19
- One New COVID-19 Offender Case for Virginia DOC
- Three Virginia DOC Offenders Test Positive for COVID-19
- Virginia DOC’s Correctional Enterprises Manufacturing Sneeze/Cough Guard Masks for Staff and Offenders
- Virginia DOC’s COVID-19 Medical Guideline, Pandemic Sanitation Plan Working to Keep Offenders Safe
- Visitors and Volunteers to Virginia DOC Facilities Suspended Until Further Notice
- Virginia DOC Mobilized Against COVID-19, Asks Visitors to Self-Monitor


Azania Neptune labs develops smart contracts that revolutionises health sector.
By admin / Jan 20, 2019South Africa just got introduced to nebulas.
Read MoreThese are our leading services
our community offering
Our Decentralised web applications allow startups
to intergrate financial technology
ensures there is no single point of failure so the site is more secure
Protect your files on a blockchain
It is more affordable to conventional centralised systems,
however decentralisation ensures your data ia secure.
Allowing people to trade
without fear of fraud
or lossing your products
They get bigger every time you click on them.
Subscribe and you'll see.
5 .0
Projects Managed
15 +
Wallets created
4
Blockchains under development
2208
Cryptocurrencies sold
Dantes remained confused and silent by this explanation of the
thoughts which had unconsciously
The Blockchain for developers,
startups, and customers.

This is the main channel for azania to communicate with it's customers.
South Africa just got introduced to nebulas.
Read MoreAzania will help develop the 3rd web or web3.
Read MoreLorem ipsum dolor sit amet, consectetur adipisicing elit. Accusamus ex itaque repudiandae nihil qui debitis atque necessitatibus aliquam, consequuntur autem!
Read MoreLorem ipsum dolor sit amet, consectetur adipisicing elit. Accusamus ex itaque repudiandae nihil qui debitis atque necessitatibus aliquam, consequuntur autem!
Read MoreLorem ipsum dolor sit amet, consectetur adipisicing elit. Accusamus ex itaque repudiandae nihil qui debitis atque necessitatibus aliquam, consequuntur autem!
Read MoreDantes remained confused and silent by this explanation of the
thoughts which had unconsciously
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commo
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commo
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commo
Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commo
Send Azania Neptune labs an email
We'd love to hear from you.


Constructor
new CNum(expr)
Parameters:
| Name | Type | Description |
|---|---|---|
expr |
string | a text representing a complex number with imaginary unit i. Cartesian, trigonometric and polar expressions can be used. |
Example
var foobar = new CNum('2+3i') or var baz = new CNum('12*exp(3i)')

Members
(static) options
Options used to change the appearance of a plot. This set of options
is used in all methods displaying numbers.
Methods
addCNum(_zToAdd, options, resultoptions) → {CNum}
addCNum ( _zToAdd, options, resultoptions ): add a CNum _zToAdd to the current CNum, plot the result and return the sum as a new CNum.
Parameters:
| Name | Type | Description |
|---|---|---|
_zToAdd |
CNum | the number to add |
options |
options | set appearance of the complex number to add (see CNum.options for a list of possible settings) |
resultoptions |
options | change appearance of the resulting complex number (see CNum.options for a list of possible settings) |
Returns:
the result of the operation as a CNum
- Type
- CNum
addToPlot(z, settings)
addToPlot ( z, options ): add a CNum to an existing plot - may
be used to plot several numbers on one canvas at the same time.
Caveat: the plot will not be rescaled nor cleared (of course).
Parameters:
| Name | Type | Description |
|---|---|---|
z |
CNum | the complex number to add to the current plot |
settings |
options | change plot appearance (see CNum.options for a list of possible settings) |
displayGauss(options, radius)
displayGauss(options, radius): draw the complex number z as an arrow in the complex plane on the
selected canvas (set by setCanvas()).
This method either plots a single CNum or the first one in a series
of CNums drawn onto the same canvas. Additional numbers can be
displayed on that canvas using addToPlot().
Parameters:
| Name | Type | Description |
|---|---|---|
options |
options | change plot appearance (see CNum.options for a list of possible settings). |
radius |
number | (optional) scale the plot for a complex number of this value (default: autoscale). |
- Source:
- See:
-
- addToPlot(): draw another number into an existing plot.
- setCanvas(): Set the canvas to draw on.
getCanvasImage(type) → {string}
Return the current image as base64-encoded image-string
Parameters:
| Name | Type | Description |
|---|---|---|
type |
string | type of image in the form of a standard MIME type. Typical values for the type parameter are "image/png" or "image/jpeg". |
Returns:
a base64-encoded image string.
- Type
- string
GetRadius() → {float}
GetRadius(): return radius of the pointer (aka norm or absolute
value of the complex number).
Returns:
radius (norm or absolute value) of the complex
number.
- Type
- float
GetSettings() → {options}
GetSettings(): return current settings.
Returns:
settings - CNum.options.
- Type
- options
multiplyCNum(z2, options, resultoptions) → {CNum}
multiplyCNum( z2, options, resultoptions ): multiply two complex numbers in a Gaussian plot.
Parameters:
| Name | Type | Description |
|---|---|---|
z2 |
CNum | the number to multiply with |
options |
options | set appearance of the complex number to multiply with (see CNum.options) |
resultoptions |
options | change appearance of the resulting complex number (see CNum.options) |
Returns:
result of the operation as a CNum
- Type
- CNum
setCanvas(cnv) → {canvas}
setCanvas( cnv ): set the canvas to plot on.
Parameters:
| Name | Type | Description |
|---|---|---|
cnv |
integer | the canvas to use |
Returns:
cnv
- Type
- canvas
SetSettings(settings) → {options}
SetSettings(): change current settings
Parameters:
| Name | Type | Description |
|---|---|---|
settings |
options | CNum options. |
Returns:
settings - current CNum options.
- Type
- options
ToCartesian(decimals:) → {string}
ToCartesian(): Return a string of the complex number z in cartesian
representation (e.g. '1+2i')
Parameters:
| Name | Type | Description |
|---|---|---|
decimals: |
number | (optional) number of decimal places to round to (default: 1). |
Returns:
a string containing the simplest form of the
complex number z = x + i·y
- Type
- string
ToCC(decimals:) → {string}
ToCc(): return a string of the complex conjugate z* in cartesian
representation (e.g. '1-2i' for z = 1+2i)
Parameters:
| Name | Type | Description |
|---|---|---|
decimals: |
number | (optional) number of decimal places to round to (default: 1). |
Returns:
z̅, a string containing the
complex conjugate of z.
- Type
- string
ToPolar(decimals:) → {string}
ToPolar( decimals ): create a string of the complex number z in
polar representation (e.g. '2.236 ei 1.107')
Parameters:
| Name | Type | Description |
|---|---|---|
decimals: |
number | (optional) number of decimal places to round to (default: 1) |
Returns:
a string containing the number z in
polar coordinates with a bit of html for the superscripts.
- Type
- string
ToR(decimals:) → {string}
ToR(): return a string of the norm (absolute value, the length of
the vector) of the complex number z (e.g. '2.236')
Parameters:
| Name | Type | Description |
|---|---|---|
decimals: |
number | (optional) number of decimal places to round to (default: 1). |
Returns:
a string containing the norm as a real number.
- Type
- string
ToTrigonometric(decimals:) → {string}
ToTrigonometric( decimals ): return a string of the complex number z
in trigonometric representation
(e.g. '2.236 · (cos(1.107) + i · sin(1.107))')
Parameters:
| Name | Type | Description |
|---|---|---|
decimals: |
number | (optional) number of decimal places to round to (default: 1) |
Returns:
a string containing the complex number as a
mathematical expression in trigonometric notation.
- Type
- string


Incorporating Google Material Components for building beautiful, usable products using Material Design.


| Hyperconverged compute and storage |
- 16 primary compute nodes
- Two AMD EPYC 7402 CPUs at 2.8 GHz each
- 48 cores and 96 threads per node (24 cores per CPU)
- 512GB DDR4 SDRAM with a transfer rate of 3200 Mt/s on each node
- Two 960GB SSD for disk storage on each node
-
- Broadcom BCM57414 Dual port 10/25GbE SFP28
- OCP NIC 3.0 10 Gbps connection
|
| Home file system |
- /home NFS is made from the NFS machine
- 192GB DDR4 SDRAM with a transfer rate of 3200 Mt/s
- Twenty-four 3.2 TB NVMe SSDs
- Two 240GB m.2 BOSS RAID cards in RAID-1
- Broadcom BCM57414 Dual port 10/25GbE SFP28
- OCP NIC 3.0 10 Gbps connection
|
| Storage system |
- /data CephFS is made from disks on each compute node
- 1.1 PB usable storage capacity
- Twelve 16TB disks on each compute node for Ceph OSDs
- One 1TB m.2 SSD on each compute node for metadata
- One 1TB m.2 SSD on each compute node used for RocksDB database
- Broadcom BCM57414 Dual port 10/25GbE SFP28
- OCP NIC 3.0 10 Gbps connection
|
| Interactive |
- 6 interactive nodes
- Two AMD EPYC 7402 CPUs at 2.8 GHz each
- 48 cores and 96 threads per node (24 cores per CPU)
- 256GB DDR4 SDRAM with a transfer rate of 3200 Mt/s on each node
- Two 960GB SSD for disk storage on each node
- Broadcom BCM57414 Dual port 10/25GbE SFP28
- OCP NIC 3.0 10 Gbps connection
|
| GPU server |
- Four NVIDIA HGX A100 GPUs
- Two AMD 7543 CPUs at 2.8 Ghz each
- 64 cores and 128 threads (32 cores per CPU)
- 192GB DDR4 SDRAM with a transfer rate of 3200 Mt/s
- Two 960GB SSDs for disk storage
- Broadcom BCM57414 Dual port 10/25GbE SFP28
- OCP NIC 3.0 10 Gbps connection
|
| Network |
- Two Juniper QFX5120 analysis facility switches
- 40 Gbps bandwidth each for a total bandwidth of 80 Gbps
- 48 10/25GbE SFP28 ports each for 96 total ports
-
Two Juniper QFX10002 distribution switches
- 100 Gbps bandwidth each for a total of 100 Gbps
- MC LAG configuration creates a virtual single switch
- Interfaces with Science DMZ
|
| Fast Disk Compute |
- 8 fast disk compute machines
- Two Intel Xeon Gold 6348 CPUs at 2.6 GHz each
- 28C/56T for each processor, x2 per server
- 384GB DDR4 SDRAM with a transfer rate of 3200Mt/s on each node
- NVMe drives used for 6TB of fast /scratch disk each node
- BOSS-S2 controller with two 240GB m.2 in RAID1 for root disk
- Broadcom BCM57414 Dual port 10/25GbE SFP28
- OCP NIC 3.0 25 Gbps connection
|


Leinster come out on top in tough Lyon encounter
by James CoxLyon 6-13 Leinster
Leinster dug deep to come out on top in a tough away clash against Lyon today.
Lyon out-half Jonathan Wisniewski missed an early drop-goal attempt before Leinster went ahead through a Johnny Sexton penalty.
Lyon were putting heavy pressure on the visitors but Leinster's defence came up with the goods for what proved to be the game's only try.
Josh van der Flier won the ball before giving it to James Ryan.
Tadhg Furlong and Rob Kearney were also involved in the move which eventually saw Max Deegan touch down.
Sexton converted before Lyon went in search of a try of their own.
Leinster were under pressure for much of the game but they managed to hold firm for a crucial win.
Next up in the Champions Cup for Leo Cullen's side is Northampton Saints, who beat Benetton today.
LYON - T Arnold; X Mignot (R Wulf 69), T Regard, C Ngatai, N Nakaitaci; J Wisniewski, B Couillous (capt) (J Pelissie 54); X Chiocci (R Chaume 48), M Ivaldi (J Maurouard ), D Bamba (F Gomez Kodela 48); V Bruni, H Roodt (E Oosthuizen 66); J Puricelli (L Goujon 29), L Gill, C Fearns.
LEINSTER - R Kearney; J Larmour, G Ringrose, R Henshaw, J Lowe; J Sexton (capt) (R Byrne 78), L McGrath (J Gibson-Park 61); C Healy (E Byrne 61), R Kelleher (J Tracy 61), T Furlong (A Porter 54); S Fardy (J Murphy 74), J Ryan; R Ruddock (D Toner 54), J van der Flier, M Deegan.


Preparation time
30 mins to 1 hour
Cooking time
10 to 30 mins
Serves
Serves 4
By keeping the salmon at a low temperature, the surface area changes colour very slightly, but the inside retains depth and is soft and smooth – like sous vide salmon.
Equipment and preparation: You will need a cooking thermometer to check the temperature of the oil in this recipe, plus a melon baller to shape the potatoes.
Mix the marinade ingredients together. Add the salmon fillets and rub the marinade into the salmon. Leave for half an hour.
To cook the salmon, heat the olive oil in a pan large enough to hold the salmon in a single layer – this is important – the fish needs the residual heat from the base of the pan and will cook unevenly if in more than one layer.
Heat the oil to 55C and turn off the heat. Add the salmon and cook for 18–20 minutes. The temperature will drop to around 45C – if it gets any lower, return it to the heat until it rises again to 45C. Drain on kitchen paper.
For the pommes noisettes, use a melon baller to scoop out balls of the potatoes. Rinse in cold water, then put in a saucepan and cover in more cold water. Bring to the boil and simmer for 1 minute, then drain and leave to dry.
Heat the clarified butter in a frying pan large enough to hold the potatoes in a single layer. Add the potatoes and season. Cook on a medium to high heat, shaking the pan regularly so they cook all over, for between 8-10 minutes. Sprinkle with parsley if you like. Serve the salmon fillets with the pommes noisettes.


The TMProgramPulse API call requires a hardware adapter that supports programming voltage such as the DS9097E COM serial port brick adapter. It should be used only if there is a 1-Wire EPROM device on the 1-Wire network. This function puts out a 480 microsecond 12 volt pulse on the 1-Wire network to program EPROM bits in a 1-Wire EPROM device such as the DS1982. WARNING!! if an NV-RAM, EEPROM or memory-less 1-Wire device is on the 1-Wire network, damage may occur from the 12 volt pulse.
For a description of the above types, see the TMEX Type Descriptions.
Parameters
session_handle
Specifies the session handle returned from the API function TMExtendedStartSession that specifies the desired 1-Wire network port. This parameter is required by most TMEX API functions.
Return Value
1 => 480us 12 volt pulse sent to 1-Wire network.
<0 => TMEX Hardware Specific Error Return Code
See Also


main page
modules
namespaces
classes
files
Gecode home
Generated on Thu Apr 11 13:59:36 2019 for Gecode by
doxygen
1.6.3
Testing finite domain integers
[
Testing
]
Modules
Arithmetic constraints
Basic setup
Bin-packing constraints
Boolean constraints
Channel constraints
Circuit constraints
Count constraints
Cumulative scheduling constraints
Cumnulatives scheduling constraint
Distinct constraints
Domain constraints
Element constraints
Synchronized execution
Extensional (relation) constraints
Counting constraints (global cardinality)
Linear constraints
Membership constraints
Minimal modelling constraints (arithmetic)
Minimal modelling constraints (Boolean constraints)
Minimal modelling constraints (counting)
Minimal modeling constraints (linear constraints)
Minimal modelling constraints (relation)
No-overlap constraints
Number of values constraints
Order constraint
Relation constraints
Sequence constraints
Sorted constraints
Unary scheduling constraints
Unsharing variables in arrays
General test support


li·brar·y
/ˈlīˌbrerē, ˈlīb(ə)rē/
noun: library
a building or room containing collections of books, periodicals, and sometimes films and recorded music for people to read, borrow, or refer to.
I am a library amplifier. I draw on my creative training to empower administrators’ and patrons’ own creativity so they may shape, and reshape, the libraries that serve them. This hands-on community process brings libraries to ⚡life⚡.
What follows is a selection of library innovation work while Library Director at Olin College, a founding member of Harvard’s Library Innovation Lab, and a graduate student at the MIT Media Laboratory. As lives trend online, libraries’ trusted position offline at intersection of people, knowledge, and place remains “evergreen” terrain for innovation.
The Olin College Library went from a ghost town to the center of town in about a year and a half. By inviting students to shape the culture of the place, we invigorated student engagement with the collection, the space, and each other.
We needed flexibility for the culture to emerge, two strategies stand out:
Colorful paint, removable vinyl sticker supergraphics, laminate to resurface tables, homosote bulletin boards - these skin deep changes transformed the space. Simple guide rails allowed us to act with relative autonomy:
It was helpful to think of the library as a theater: the space as a stage, the programming as a long, slow performance. An evolving collection of low-fidelity yet suggestive sets supporting the “performance” of library programming were transformed the atmosphere. The details of the sets mattered, the available bowl of yarn and needles, a collection of operable and interactive antiques.
Student engagement was the backbone of the library’s transformation.
In partnership with Engineering Professor Aaron Hoover we created OWL (Olin Workshop on the Library) Summer Design/Build program. For eight weeks we set seven students free to create the library (space) the community wanted.
Recognizing that building a new collection is an act of research and a set of decisions about what to buy is something anybody can understand. Same with the joy of spending somebody else’s money. This is how we began our media tools collection.
Students were invited to shape the technologies of the library as much as its spaces. In collaboration with Visiting Professor of Computer Scientist Oliver Steele, we created and co-ran the Hacking the Library🔧 for two semesters.
Producing faculty retreats became a library tradition (thanks to the castors on the stacks), same with Holiday Happenings and the Community-wide Cookie Swaps.
I was brought on to help found the new Library Innovation Lab at the Harvard Law School Library. We were able to do a lot.
With the support of Prof. Jeffrey Schnapp, I created, and co-ran the Library Test Kitchen for three semesters in Harvard’s Graduate School of Design. From the Inflatable Reading Room to the The Wi-Fi Cold Spot, student work was brilliant.
A 21-day pop-up library experiment in ground floor retail in Harvard Square. Designed, built and operated by 16 folks in the Library Test Kitchen Seminar, Harvard Graduate School of Design.
A fully operational library catalog (or OPAC). Visualization of book size and anonymized lending history to reveal the “life” of the collection.
This was policy design to address the ocean of books languishing in copyright. Once a book no longer has buyers, Library License aimed to make one free online copy available to every library that wants one. The License was a legally binding rider for book contracts drafted by lawyers from Berkman Center for Internet and Society at the Harvard Law School. It went surprisingly far, only to be deemed too
“incremental” by the leadership of Creative Commons.
StackView was the project I did as an Artist-in-Residence at ED Lab, Teachers College Library, Columbia. This lead to my position at the Harvard Library Innovation Lab.
The pitch video:
While at the MIT Media Lab I designed this audio discovery tool to increase the serendipity of bumping into music. (I got help coding it by Bob Burkhardt!). I think it could work quite well for podcasts…