Alfresco ACL on WCM WebForms, an howto
When it comes to setting up an Alfresco WebProjects, you configure it to make use of a set of WebForms already available on the Alfresco repository. From that moment on, every user with write rights on the web project will be able to pick one web form and push some content through it into the AVM repository. But what if you want to forbid some users to actually make use of some web forms? The default Alfresco doesn't present any GUI control that allows you to define web forms level ACLs, but in facts there's a way to define them in an easy way, without the need of any real customization. Let's see how to do that on the Alfresco WCM we setup in the previous chapters of this series.
The idea
So, we want to be able to relate web forms and users or groups, thus restricting access to web forms depending on your credentials. We want to configure a number of web forms to be available on the web project, while users will see only the ones they've access to when trying to create some contents, so that dropdowns and links will appear only when it's appropriate. Moreover, we do not want to waste our time on custom code, we just want Alfresco to do its job.
The way we are going to address this requirement is through the use of real ACL setup configured on the web forms themselves, so that the Alfresco permission checks will be able to trim the list of available web forms to the users whenever they ask for create content. Sounds reasonable, right?
Bug!
As a disclaimer, I must say the proposed approach doesn't work with a vanilla Alfresco3.2r because of a nasty bug that will throw Exceptions all over the place once you configured restrictive ACLs on web forms. Thanks to the OpenSource nature of Alfresco, and thanks to Brad Davis that provided a patch for it, we can just change the Alfresco source code and we'll be able to go forward. While we wait for a real mavenized Alfresco, this involves having the Alfresco SDK properly installed on your system, apply the patch and upload it to your local maven repo.
Define the ACL
Now start up Alfresco and login as the admin. To prove the ACL effectiveness, we will need two users and one group. In the following I'll assume the users are called bob and todd and the group, where only bob is listed, is called full-access.
Now go to the Company Home/Data Dictionary/Web Forms folder and open the property sheet of the article web form folder.
You'll be now able to customize the permissions on this level by clicking on Manage Space users, that will bring you to the ACL managing wizard. Uncheck the Inherit Parent Space Permissions box and then click on Invite.., setting up the full-access group to have the Coordinator role.
Test it
We're already done! Now, try to log in into Alfresco with the two users and verify that only bob can actually see the article web form appearing on the UI.
Conclusion
This technique allows for a whole lot of use cases, where different divisions are not allowed to author content of different types. The only drawback of this solution is that when you have more than one web project per Alfresco instance, and you want to reuse the web forms, you will need to setup different groups for the different web projects (this will almost always be the case, anyway) and do the ACL configuration twice. Not that big deal, of course, but the lack of any centralized ACL managing tool will make it harder to maintain the permissions schemes.
blog comments powered by Disqus


Based on The Pelko Method invented by fictional CEO Brad Bradstone.
When you set the timer, it will wait from 5-25 minutes before going off.
Press the button again to get a five minute break timer.
Push the button - it will start your first pelko round.


The earliest stars probably formed only a few hundred thousand years after the Big Bang that started the universe - maybe about 13.5 billion years ago. Stars are the oldest big objects in the Universe. Stars formed big clumps of hydrogen and a few helium atoms, the simplest kinds of atoms, and pretty much the only kinds that existed before there were stars. Once enough hydrogen and helium atoms clumped together, though, they began to have tremendous gravity.
This gravity pulled the hydrogen atoms closer and closer together in the middle of the star. All those electrons in one place made the star hotter and hotter - about 100 million degrees celsius. As the atoms got closer together, they bumped into each other more often. When this happened, sometimes the two atoms would join together into one atom, and two hydrogen atoms would turn into one helium atom. We call this process "nuclear fusion". Nuclear fusion releases a lot of extra electrons, and these electrons go shooting off into space in all directions. It's those zillions of electrons that you see, that make the stars shine - and that's what makes our Sun shine, too. The electrons give off all wavelengths of energy, so they give off not only light, but also heat....
The Sun is a star, just like billions of other stars in the universe. Our Sun probably formed a little more than four and a half billion years ago, just a little bit before the planets formed around it. It's not one of the older stars in the Universe. Probably some of the earliest stars went supernova, and then new stars formed out of those nebulae, and then the new stars went supernova, and the Sun formed out of one of these new nebulae. So you could say that the Sun is like the grandchild of the first stars.
Like other stars, the Sun is mostly made of hydrogen atoms. All stars start out making energy by changing hydrogen atoms into helium atoms. At the surface, the Sun is almost 10,000 degrees Fahrenheit (more than 5000 degrees Celsius), but it is much hotter in the middle of the Sun, about 25 million degrees Fahrenheit (14 million degrees Celsius). The Sun is one of the brighter stars in the Universe, because many other stars are older and have already turned into red dwarfs....
An eclipse of the sun happens whenever the moon gets between the Earth and the sun, so that the moon blocks your view of the sun. Depending on where you are standing on the Earth, you might see the sun completely blocked (as in these pictures) or only partly blocked, or you might not see it at all.
The moon passes between the Earth and the sun once every month, at the new moon, but most of the time the moon is either too high up or too low to block our view of the sun. About twice a year, the moon does get in the way of the sun, causing an eclipse. But even then, you can only see the eclipse from some places on Earth; the area where you can see a total eclipse is about 100 miles wide. Eclipses move around the earth, so every year people in different places see them....


"x" "1" "CZECZOT,H, RAHDEN-STARON,I, OLESZEK,W AND JURZYSTA,M, ISOLATION ANDSTUDY OF THE MUTAGENIC ACTIVITY OF SAPONINS IN THE AMES TEST, ACTA POL. PHARM.51(2): 133-136, 1994"


FOR A FREE CAR INSURANCE RATE QUOTE THAT COULD SAVE YOU SUBSTANTIAL MONEY WWW.GEICO.COM 1-888-395-6349, 24 HOURS A DAY
If you have any comments about our WEB page, yu can either write us at the address above or email us at<EMAIL_ADDRESS>However, due to the limited number of personnel in our corporate office, we are unable to provide a direct response.
Copyright © 1978-2014Berkshire Hathaway Inc.


This is a bunch of text split into three columns. The `column-rule-width` property is used to change the width of the line that is drawn between columns. Don't you think that's wonderful?


Mixtape Project - The situation
THE SITUATION
The task was to create an aesthetic splash page to promote any product. The splash page should be engaging for the user and should have some components to let the user navigate to other pages of the website, even if they don’t have any functionality. The challenge was to learn how to host the site with Heroku App using node.js as the primary build pack.
Mixtape Project - The solution
THE SOLUTION
I chose a high-end bike from my favourite brand: Specialized. I redesigned the colours and added some details with Photoshop creating a "special edition" of the product. Then, I created a modern, clean and attractive website that is fully responsive and has very few elements to keep the design simple.
Some of the components of the landing page are buttons that would take the user to different sections or pages to keep them interested. It has been proven that if a user navigates through more pages it is more likely to buy a product, that’s why the landing page should have buttons to invite the user to keep searching around.


Calculation of the mean convective heat transfer coefficient
kc for a laminar or turbulent fluid flow over an
even surface.
Functions kc_overall and
kc_overall_KC
There are basically three differences:
- The function kc_overall is using
kc_overall_KC but offers additional output
variables like e.g. Reynolds number or Nusselt number and failure
status (an output of 1 means that the function is
not valid for the inputs).
- Generally the function kc_overall_KC is
numerically best used for the calculation of the mean convective
heat transfer coefficient kc at known mass flow
rate.
- You can perform an inverse calculation from
kc_overall_KC, where an unknown mass flow rate is
calculated out of a given mean convective heat transfer coefficient
kc
Restriction
- constant wall temperature
- overall regime (Reynolds number 1e1 < Re < 1e7)
- Prandtl number 0.6 ≤ Pr ≤ 2000
Geometry and Calculation
This heat transfer function enables a calculation of heat
transfer coefficient for laminar and turbulent flow regime. The
geometry, constant and fluid parameters of the function are the
same as for
kc_laminar and
kc_turbulent.
The calculation conditions for laminar and turbulent flow is
equal to the calculation in kc_laminar and
kc_turbulent. A smooth transition between both
functions is carried out between 1e5 ≤ Re ≤ 5e5 (see figure
below).
Verification
The mean Nusselt number Nu = sqrt(Nu_lam^2 +
Nu_turb^2) representing the mean convective heat transfer
coefficient kc for Prandtl numbers of different
fluids is shown in the figure below.
References
- VDI:
- VDI - Wärmeatlas: Berechnungsblätter für den
Wärmeübergang. Springer Verlag, 9th edition, 2002.
Generated at 2019-01-25T16:44:03Z by OpenModelica 1.14.0~dev-130-gefa44fb


I had steam sauteed some onions at lunch in my favourite cast iron frying pan and had put a little water in the pan to let the leavings soften. That oniony goodness was too valuable to wash down the drain, so I used it as a base for this stew.
I added some quinoa, 1/4 cup is 150 calories.
Then I added some water. I can't remember how much. Just some.
Sliced a stalk of celery and cut up a clove of garlic (which my friend grew in her garden - so it was extra good).
Quinoa only takes about 10 minutes to cook. I had the heat on medium high. I stayed a watched it.  I'm easily entertained.
Since I don't count celery or the garlic clove in my calorie count, I needed a few extra to bring it up to 200. (I'm currently working on eating 200 calories each time I eat. Working well so far.) So I found my yellow miso in the refrigerator. Now to give me 50 calories worth of miso, that would be 5 tsp. Way too much salt in that. So I settled for some, and scooped a blob into a bowl with a chopstick.
The quinoa had reached a texture that I feel was appropriate so I ate it with the miso.
I would cook this again. Cheers, Anita.


Hello & Welcome.
I'm John Doe, Authoritatively communicate world-class alignments before low-risk high-yield growth strategies. Synergistically envisioneer transparent niches after dynamic "outside the box" thinking. Uniquely partnerships before synergistic niche markets.
Cheers to all that you do!
Latest
Recipes
View All
Recipes of the Week
Our Latest Updates
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Quae veniam quam incidunt eos eaque esse ducimus dolore, velit, laborum dignissimos?
How to Make Paper Piping-Bag
Authoritatively productize 24/7 platforms authoritatively rather than enterprise customer service.
Learn MoreTop 10 Healthy Foods of 2021
Dramatically initiate authoritatively interactive e-tailers with enterprise results phosfluorescently.
Learn MoreTop Vegetarian Meal Preps
Some quick example text to build on the card title and make up the bulk of the card's content.
Learn More


{% extends "core_main_app/_render/admin/theme/tools/modal.html" %} {% block modal_id %}operator-delete-modal{% endblock %} {% block modal_title %}Delete Search Operator ?{% endblock %} {% block modal_body %}
The search operator will be deleted from the system and users won't be able to use it in their search.
Are you sure you want to delete the operator ?
{% endblock %} {% block modal_footer %} {% endblock %}


RNN MRI is a tool that visualizes the internal dynamics of a character-lever Recurrent Neural Network (RNN) during training, prediction, and generation.
See
Andrej Karpathy's wonderful article on character-level RNNs to learn more about the network you see visualized.
The demo is pre-filled with URLs that point to images, as scraped from some StackOverflow pages. Fill it with different data and retrain if you wish.


Contact the Creator
My contact number is<PHONE_NUMBER>
I can be emailed at<EMAIL_ADDRESS>Home


I have been taking Cymbalta for about 2 months. I started out with the 30mg and now I am taking 120mg 1x day. I take Cymbalta for Depression, Diabetic Pain, Psoriatic Arthritis Pain, Fibromyalgia, Weight Loss. But I have noticed about 3 days after starting the 120mg a day my psoriasis flared up very bad.
I have not added anything new to my diet.
SENT5
The only different was the increase of the Cymbalta. I will keep on taking the medication at that dose. I will just keep on using a lot of creams to help with the Psoriasis rash. I must also say I have been losing a lot of Weight which is a good thing.


A multiline text field that supports editing and scrolling.
Use the Titanium.UI.createTextArea
method to create a text area.
| blur | Fired when this text area loses focus. | |
| change | Fired when this text area value changes. | |
| click | Fired when the device detects a click against the view. | |
| dblclick | Fired when the device detects a double click against the view. | |
| doubletap | Fired when the device detects a double tap against the view. | |
| focus | Fired when this text area gains focus. | |
| longclick | Fired when the device detects a long click. | |
| longpress | Fired when the device detects a long press. | |
| pinch | Fired when the device detects a pinch gesture. | |
| postlayout | Fired when a layout cycle is finished. | |
| return | Fired when the return key is pressed on the keyboard. | |
| selected | Fired when text in this text area is selected. | |
| singletap | Fired when the device detects a single tap against the view. | |
| swipe | Fired when the device detects a swipe gesture against the view. | |
| touchcancel | Fired when a touch event is interrupted by the device. | |
| touchend | Fired when a touch event is completed. | |
| touchmove | Fired as soon as the device detects movement of a touch. | |
| touchstart | Fired as soon as the device detects a touch gesture. | |
| twofingertap | Fired when the device detects a two-finger tap against the view. |
Adds a child to this view's hierarchy.
Arguments
| view | [Titanium.UI.View] | View to add to this view's hierarchy. |
Adds the specified callback as an event listener for the named event.
Arguments
| name | [String] | Name of the event. |
| callback | [Callback<Object>] | Callback function to invoke when the event is fired. |
Animates this view.
Arguments
| animation | [Titanium.UI.AnimationDictionary<Titanium.UI.Animation>] | Either a dictionary of animation properties or an Animation object. |
| callback | [Callback<Object>] | Function to be invoked upon completion of the animation. |
Applies the properties to the proxy.
Arguments
| props | [Dictionary] | A dictionary of properties to apply. |
Translates a point from this view's coordinate system to another view's coordinate system.
Arguments
| point | [Point] | A point in this view's coordinate system. If this argument is missing an x or y property, or the properties can not be converted into numbers, an exception will be raised. |
| destinationView | [Titanium.UI.View] | View that specifies the destination coordinate system to convert to. If this argument is not a view, an exception will be raised. |
Finishes a batch update of the View's layout properties and schedules a layout pass of the view tree.
Fires a synthesized event to any registered listeners.
Arguments
| name | [String] | Name of the event. |
| event | [Dictionary] | A dictionary of keys and values to add to the Titanium.Event object sent to the listeners. |
Gets the value of the anchorPoint property.
Gets the value of the animatedCenter property.
Gets the value of the appearance property.
Gets the value of the autoLink property.
Gets the value of the autocapitalization property.
Gets the value of the autocorrect property.
Gets the value of the backgroundColor property.
Gets the value of the backgroundDisabledColor property.
Gets the value of the backgroundDisabledImage property.
Gets the value of the backgroundFocusedColor property.
Gets the value of the backgroundFocusedImage property.
Gets the value of the backgroundGradient property.
Gets the value of the backgroundImage property.
Gets the value of the backgroundLeftCap property.
Gets the value of the backgroundRepeat property.
Gets the value of the backgroundSelectedColor property.
Gets the value of the backgroundSelectedImage property.
Gets the value of the backgroundTopCap property.
Gets the value of the borderColor property.
Gets the value of the borderRadius property.
Gets the value of the borderWidth property.
Gets the value of the bottom property.
Gets the value of the center property.
Gets the value of the children property.
Gets the value of the clearOnEdit property.
Gets the value of the color property.
Gets the value of the editable property.
Gets the value of the ellipsize property.
Gets the value of the enableReturnKey property.
Gets the value of the enabled property.
Gets the value of the focusable property.
Gets the value of the font property.
Gets the value of the height property.
Gets the value of the hintText property.
Gets the value of the horizontalWrap property.
Gets the value of the keepScreenOn property.
Gets the value of the keyboardToolbar property.
Gets the value of the keyboardToolbarColor property.
Gets the value of the keyboardToolbarHeight property.
Gets the value of the keyboardType property.
Gets the value of the layout property.
Gets the value of the left property.
Gets the value of the maxLength property.
Gets the value of the opacity property.
Gets the value of the rect property.
Gets the value of the returnKeyType property.
Gets the value of the right property.
Gets the value of the scrollable property.
Gets the value of the scrollsToTop property.
Gets the value of the size property.
Gets the value of the softKeyboardOnFocus property.
Gets the value of the suppressReturn property.
Gets the value of the textAlign property.
Gets the value of the top property.
Gets the value of the touchEnabled property.
Gets the value of the transform property.
Gets the value of the value property.
Gets the value of the verticalAlign property.
Gets the value of the visible property.
Gets the value of the width property.
Gets the value of the zIndex property.
Removes a child view from this view's hierarchy.
Arguments
| view | [Titanium.UI.View] | View to remove from this view's hierarchy. |
Removes the specified callback as an event listener for the named event.
Arguments
| name | [String] | Name of the event. |
| callback | [Callback<Object>] | Callback function to remove. Must be the same function passed to addEventListener. |
Sets the value of the anchorPoint property.
Arguments
| anchorPoint | [Point] | New value for the property. |
Sets the value of the appearance property.
Arguments
| appearance | [Number] | New value for the property. |
Sets the value of the autoLink property.
Arguments
| autoLink | [Number] | New value for the property. |
Sets the value of the autocapitalization property.
Arguments
| autocapitalization | [Number] | New value for the property. |
Sets the value of the autocorrect property.
Arguments
| autocorrect | [Boolean] | New value for the property. |
Sets the value of the backgroundColor property.
Arguments
| backgroundColor | [String] | New value for the property. |
Sets the value of the backgroundDisabledColor property.
Arguments
| backgroundDisabledColor | [String] | New value for the property. |
Sets the value of the backgroundDisabledImage property.
Arguments
| backgroundDisabledImage | [String] | New value for the property. |
Sets the value of the backgroundFocusedColor property.
Arguments
| backgroundFocusedColor | [String] | New value for the property. |
Sets the value of the backgroundFocusedImage property.
Arguments
| backgroundFocusedImage | [String] | New value for the property. |
Sets the value of the backgroundGradient property.
Arguments
| backgroundGradient | [Gradient] | New value for the property. |
Sets the value of the backgroundImage property.
Arguments
| backgroundImage | [String] | New value for the property. |
Sets the value of the backgroundLeftCap property.
Arguments
| backgroundLeftCap | [Number] | New value for the property. |
Sets the value of the backgroundRepeat property.
Arguments
| backgroundRepeat | [Boolean] | New value for the property. |
Sets the value of the backgroundSelectedColor property.
Arguments
| backgroundSelectedColor | [String] | New value for the property. |
Sets the value of the backgroundSelectedImage property.
Arguments
| backgroundSelectedImage | [String] | New value for the property. |
Sets the value of the backgroundTopCap property.
Arguments
| backgroundTopCap | [Number] | New value for the property. |
Sets the value of the borderColor property.
Arguments
| borderColor | [String] | New value for the property. |
Sets the value of the borderRadius property.
Arguments
| borderRadius | [Number] | New value for the property. |
Sets the value of the borderWidth property.
Arguments
| borderWidth | [Number] | New value for the property. |
Sets the value of the bottom property.
Arguments
| bottom | [NumberString] | New value for the property. |
Sets the value of the center property.
Arguments
| center | [Point] | New value for the property. |
Sets the value of the clearOnEdit property.
Arguments
| clearOnEdit | [Boolean] | New value for the property. |
Sets the value of the color property.
Arguments
| color | [String] | New value for the property. |
Sets the value of the editable property.
Arguments
| editable | [Boolean] | New value for the property. |
Sets the value of the ellipsize property.
Arguments
| ellipsize | [Boolean] | New value for the property. |
Sets the value of the enableReturnKey property.
Arguments
| enableReturnKey | [Boolean] | New value for the property. |
Sets the value of the enabled property.
Arguments
| enabled | [Boolean] | New value for the property. |
Sets the value of the focusable property.
Arguments
| focusable | [Boolean] | New value for the property. |
Sets the value of the font property.
Arguments
| font | [Font] | New value for the property. |
Sets the value of the height property.
Arguments
| height | [NumberString] | New value for the property. |
Sets the value of the hintText property.
Arguments
| hintText | [String] | New value for the property. |
Sets the value of the horizontalWrap property.
Arguments
| horizontalWrap | [Boolean] | New value for the property. |
Sets the value of the keepScreenOn property.
Arguments
| keepScreenOn | [Boolean] | New value for the property. |
Sets the value of the keyboardToolbar property.
Arguments
| keyboardToolbar | [Array<Titanium.UI.View>Titanium.UI.iOS.Toolbar] | New value for the property. |
Sets the value of the keyboardToolbarColor property.
Arguments
| keyboardToolbarColor | [String] | New value for the property. |
Sets the value of the keyboardToolbarHeight property.
Arguments
| keyboardToolbarHeight | [Number] | New value for the property. |
Sets the value of the keyboardType property.
Arguments
| keyboardType | [Number] | New value for the property. |
Sets the value of the layout property.
Arguments
| layout | [String] | New value for the property. |
Sets the value of the left property.
Arguments
| left | [NumberString] | New value for the property. |
Sets the value of the maxLength property.
Arguments
| maxLength | [Number] | New value for the property. |
Sets the value of the opacity property.
Arguments
| opacity | [Number] | New value for the property. |
Sets the value of the returnKeyType property.
Arguments
| returnKeyType | [Number] | New value for the property. |
Sets the value of the right property.
Arguments
| right | [NumberString] | New value for the property. |
Sets the value of the scrollable property.
Arguments
| scrollable | [Boolean] | New value for the property. |
Sets the value of the scrollsToTop property.
Arguments
| scrollsToTop | [Boolean] | New value for the property. |
Selects the text in range (start, end).
Arguments
| start | [Number] | Start index for selection. Value ranges from 0 to the text's length. |
| end | [Number] | End index for selection, not inclusive. Value ranges from 0 to the text's length. |
Sets the value of the softKeyboardOnFocus property.
Arguments
| softKeyboardOnFocus | [Number] | New value for the property. |
Sets the value of the suppressReturn property.
Arguments
| suppressReturn | [Boolean] | New value for the property. |
Sets the value of the textAlign property.
Arguments
| textAlign | [StringNumber] | New value for the property. |
Sets the value of the top property.
Arguments
| top | [NumberString] | New value for the property. |
Sets the value of the touchEnabled property.
Arguments
| touchEnabled | [Boolean] | New value for the property. |
Sets the value of the transform property.
Arguments
| transform | [Titanium.UI.2DMatrixTitanium.UI.3DMatrix] | New value for the property. |
Sets the value of the value property.
Arguments
| value | [String] | New value for the property. |
Sets the value of the verticalAlign property.
Arguments
| verticalAlign | [NumberString] | New value for the property. |
Sets the value of the visible property.
Arguments
| visible | [Boolean] | New value for the property. |
Sets the value of the width property.
Arguments
| width | [NumberString] | New value for the property. |
Sets the value of the zIndex property.
Arguments
| zIndex | [Number] | New value for the property. |
Returns an image of the rendered view, as a Blob.
Arguments
| callback | [Callback<Titanium.Blob>] | Function to be invoked upon completion. If non-null, this method will be performed asynchronously. If null, it will be performed immediately. |
| honorScaleFactor | [Boolean] | Determines whether the image is scaled based on scale factor of main screen. (iOS only) When set to true, image is scale factor is honored. When set to false, the image in the blob has the same dimensions for retina and non-retina devices. |
Performs a batch update of all supplied layout properties and schedules a layout pass after they have been updated.
Arguments
| params | [Dictionary] | Layout properties to be updated. |
Event properties
| source |
[Object] Source object that fired the event. |
| type |
[String] Name of the event fired. |
| value |
[String] Value of this text area. |
Event properties
| source |
[Object] Source object that fired the event. |
| type |
[String] Name of the event fired. |
| value |
[String] New value of this text area. |
Event properties
| source |
[Object] Source object that fired the event. |
| type |
[String] Name of the event fired. |
| x |
[Number] X coordinate of the event from the |
| y |
[Number] Y coordinate of the event from the |
Event properties
| source |
[Object] Source object that fired the event. |
| type |
[String] Name of the event fired. |
| x |
[Number] X coordinate of the event from the |
| y |
[Number] Y coordinate of the event from the |
Event properties
| source |
[Object] Source object that fired the event. |
| type |
[String] Name of the event fired. |
| x |
[Number] X coordinate of the event from the |
| y |
[Number] Y coordinate of the event from the |
Event properties
| source |
[Object] Source object that fired the event. |
| type |
[String] Name of the event fired. |
| value |
[String] Value of this text area. |
Event properties
| source |
[Object] Source object that fired the event. |
| type |
[String] Name of the event fired. |
Event properties
| source |
[Object] Source object that fired the event. |
| type |
[String] Name of the event fired. |
| x |
[Number] X coordinate of the event from the |
| y |
[Number] Y coordinate of the event from the |
Event properties
| scale |
[Number] The scale factor relative to the points of the two touches in screen coordinates. |
| source |
[Object] Source object that fired the event. |
| type |
[String] Name of the event fired. |
| velocity |
[Number] The velocity of the pinch in scale factor per second. |
Event properties
| source |
[Object] Source object that fired the event. |
| type |
[String] Name of the event fired. |
Event properties
| source |
[Object] Source object that fired the event. |
| type |
[String] Name of the event fired. |
| value |
[String] Value of this text area. |
Event properties
| range |
[textAreaSelectedParams] Dictionary that describes the position and length of the selected text. |
| source |
[Object] Source object that fired the event. |
| type |
[String] Name of the event fired. |
Event properties
| source |
[Object] Source object that fired the event. |
| type |
[String] Name of the event fired. |
| x |
[Number] X coordinate of the event from the |
| y |
[Number] Y coordinate of the event from the |
Event properties
| direction |
[String] Direction of the swipe--either 'left', 'right', 'up', or 'down'. |
| source |
[Object] Source object that fired the event. |
| type |
[String] Name of the event fired. |
| x |
[Number] X coordinate of the event's endpoint from the |
| y |
[Number] Y coordinate of the event's endpoint from the |
Event properties
| source |
[Object] Source object that fired the event. |
| type |
[String] Name of the event fired. |
| x |
[Number] X coordinate of the event from the |
| y |
[Number] Y coordinate of the event from the |
Event properties
| source |
[Object] Source object that fired the event. |
| type |
[String] Name of the event fired. |
| x |
[Number] X coordinate of the event from the |
| y |
[Number] Y coordinate of the event from the |
Event properties
| source |
[Object] Source object that fired the event. |
| type |
[String] Name of the event fired. |
| x |
[Number] X coordinate of the event from the |
| y |
[Number] Y coordinate of the event from the |
Event properties
| source |
[Object] Source object that fired the event. |
| type |
[String] Name of the event fired. |
| x |
[Number] X coordinate of the event from the |
| y |
[Number] Y coordinate of the event from the |


In this codelab we are going to demonstrate some of the Istio features like
For demonstarting istio features we are going to use one sample application called Fleetman service consists of various micro services deployed using k8s.
on MacOS run ‘brew install kubectl‘
On Windows using chocolatey package manager using ‘choco install kubectl‘
$ kubectl version --client
on MacOS run ‘brew install minikube‘
On Windows using chocolatey package manager using ‘choco install minikube‘
$ minikube version
$ minikube start --memory 4096
check minikube status by running ‘minikube status‘
$ minikube status
The minikube status should shown the following status as shown in below figure.
Check kubectl installation by running ‘kubectl version' whcih should give both client and server details.
$ kubectl version
Clone the folowing demo repo to exercise the istio features
$ git clone https://github.com/naganinja/istio-udemy.git
Change the directory to the clone repo/_course_files
$ cd path-to-cloned-repo/_course_files/1 Telemetry
Now run the following commands one after the other
‘kubectl apply -f 1-istio-init.yaml' will initialize the istio
$ kubectl apply -f 1-istio-init.yaml
‘kubectl apply -f 2-istio-minikube-reduced.yaml' will install the istio
$ kubectl apply -f 2-istio-minikube-reduced.yaml
‘kubectl apply -f 3-kiali-secret.yaml' will setup the user secret credential for Kiali login user admin/admin
$ kubectl apply -f 3-kiali-secret.yaml
‘kubectl describe namespace default' will describe the default namespace of minikube k8s
$ kubectl describe namespace default
Now let's add a label ‘istio-injection=enabled' to inject a envoy proxy along side of an each and every application getting deployed on pods.
$ kubectl apply -f 4-label-default-namespace.yaml
‘Now check whether the label ‘istio-injection=enabled' is added to default namespace or not' by running
$ kubectl describe namespace default
‘Now check the istio installation by verifying the running pods by running ‘kubectl get po -n istio-system'
$ kubectl get po -n istio-system
make sure all the pods are running/completed as shown in below figure.
Now let's install sample Fleetman microservice application by running ‘kubectl apply -f 5-application-no-istio.yaml'
$ kubectl apply -f 5-application-no-istio.yaml
$ minikube ip
Now let's open the Fleetman web application in browser using minikube ip
//TODO - add the architecture digram of fleetman microservice application
Kiali - Kiali provides information on what microservices are part of my Istio service mesh and how they are connected to each other and how they are performing.
Let's visualize the service mesh topolgy of sample fleetman micro service application using Kiali web application UI http://minikubeip:31000
Login to Kiali UI using crdentials admin/admin
Kiali Services tab shows what are the different services that are deployed in servicemesh
Kiali Workloads tab shows what are the different workloads that are part of servicemesh
Kiali Applications tab shows what are the different applications that are part of servicemesh
Kiali ServiceGraph tab shows what are the different services that are part of servicemesh, and how they are connected to each other.
Initially the service graph show the traffic connection grayed out between fleetman-webapp service to webapp application as shown in below figure.
Now let's access the fleetman web app continously through curl, which will update the Kiali service graph dynamically by depicting the traffic connectivity in green from fleetman-webapp service to web application as shown in below figure.
In this code excercise we are going to see how canary deployment can be done using K8S vs Istio.
First lets see the 50-50 deployment of k8s with safe version and risky version of Staff service deployed to serve 50% requests with safe the other with risky.
Here the safe version will show a placeholder image , the risky version will show the actual photograph of driver which is developed newly and getting tested with k8s canary.
$ cd 'clone-repo/_course_files/2 Traffic'
$ kubectl apply -f 5-application-no-istio.yaml
while true; do curl http://<IP_ADDRESS>:30080/api/vehicles/driver/London%20Riverside ; echo; sleep 0.2 ; done;
So far we have just seen 50-50 percentage k8s canary deployment, what if we want canary to be deployed in 90-10 % way? Can this be achived by k8s. Yes we can, but with the cost of 9 replicas of safe service version and 1 replica of risky staff version resources. Which is not desirable as it is resource intensive.
Lets see how Istio is going to solve with less pods like 1 pod for safe and 1 pod for risky version using two important custom resource definitions introduced by istio called ‘VirtualService' and ‘DestinationRule'. You can get more info on these at istio-docs VirtualService & DestinationRule.
Lets move ahead with our demo of 90-10 weighted percentage traffic split canary deployment using Istio. Before applying istio's virtual services and destination rules lets run the above continuous curl command and then run the following command.
$ kubectl apply -f 6-istio-rules.yaml
Observe how dynamically the behaviour is getting changed from k8s 50-50 to the serving of 90-10 weighted percentage traffic split, It's happening with out changing any application service code or any down time through istio's configuration file ‘6-istio-rules.yaml' application as shown in below figure.
Let's see how Istio Gateway being used for managing inbound and outbound traffic of your mesh. The use cases we are going to demo here are
demonstarted through /canary , /experimental URI paths & with headers serving different versions of front end fleetman web UI.
The scenario we are going to demo here is that the fleetman front-end angular UI microservice have two versions of UI, the canary or experimental ones show the Red ribbon titlte as ‘Fleet Management Istio Premium Enterprise Edition' if the UI being accessed with /canary or /experimental in URI or else normal Gray color ribboned title ".
Lets run the following command to apply the URI prefix gateway rules.
$ cd 'clone-repo/_course_files/3 Gateways Solution - Prefix Routing'
$ kubectl apply -f 6-istio-rules.yaml
To verify the above istio rules lets run the following commands
curl -s http://<IP_ADDRESS>:31380/experimental | grep title
curl -s http://<IP_ADDRESS>:31380/canary | grep title
The above commands will output the content as shown in below figure, where both /experimental and /canary will return title as ‘Fleet Management Istio Premium Enterprise Edition' ,where as plain root url will return title as ‘Fleet Management'
So far we have just witnessed how gateway can be used to route the traffic using ‘Virtual Services' & ‘Destination Rules', now lets see how Dark Releases can be done using Istio in production clusters with out impacting the exisitng application using header based routing.
Dark releases are the ones where newly developed featured can be pushed to production clusters and get tested with out impacting any existing application features. This gives a great advantage of reducing operation costs of application in terms of not provisioning a dev/staging cluster equalent to production to test how the newly developed features are getting behaving.
Lets clean the minikube cluster by running
$ minikube delete
and then apply all the yaml files of ‘4 Dark Releases' folder one after the other in numeric order, while applying these make sure you give some gap after running ‘kubectl apply -f 2-istio-minikube-reduced.yaml' and wait for all the pods of istio-system namespace are up and running using command ‘kubectl get po -n istio-system'.
Then apply remaining yaml one by one.
Lets run the following command to apply the dark release rules, where users can access the newly developed features in production by passing some header and there by validate them.
$ cd 'clone-repo/_course_files/4 Dark Releases'
$ kubectl apply -f 6-istio-rules.yaml
$ kubectl apply -f 7-dark-release-rules.yaml
Now let's verify the above applied istio rules installing browser extensions like
‘Modheader' by passing some custom headers as configured in 6-istio-rules.yaml.
The extension we are using here is for chrome called as ‘Modheader'
Lets access the url from bowser with following headers added in Modheader as shown in the figures below.
TODO
TODO


G-Crypto
A Crypto Consultant YOU CAN TRUST!
What would you like today? *
Bitcoin
Ethereum
Which wallet(s) do you want to use? *
Hardware Wallet
Web Wallet
Customer Information
First Name *
Name *
Street Address *
Zip Code *
Email *
Confirm Email *
Phone *
Billing Information
Same as above
First Name *
Last Name *
Street Address *
Zip Code *
Phone *


Errors were thrown in the sample, but not included in an errors tag
These errors were not marked as being expected: 2588.
Expected: //
@errors: 2588
Compiler Errors:
index.ts
[2588] 29 - Cannot assign to 'a' because it is a constant.
Raising Code:
const a = 123
const b = 543
a = b


latest mobiles
specification
Available at
Establishment:The brand was officially established on May 4th, 2018
what we do:Realme focuses on user needs and presents products with both strong performance and trendy design.
where are we going:Realme is committed to offering powerful performance, stylish design, sincere services.


The Development of shp2nosql
In the early days of my dissertation, I was collecting Twitter data but had no idea how to store, manage, or query these data. First, I tried PostgreSQL with PostGIS. I had been wanting to learn PostGIS anyway, not to mention a suitable alternative to MS SQL Server. After learning PostGIS’s intricacies, I soon found it was unsuitable for my needs. After some searching, I stumbled upon MongoDB.
Subsequently, I started using MongoDB to handle my data. Working with MongoDB requires at least some knowledge of JavaScript, which I was wanting to learn anyway, so I didn’t mind this switch. This worked somewhat better than PostgreSQL since MongoDB is good at handling semi-structured data (like those from Twitter), but sharding was not intuitive, inserting spatial data was difficult, and queries were still slow. At the CyberGIS and GeoSpatial Data Science conference/workshop at the University of Illinois in the summer of 2016, I was introduced to Elasticsearch.
So I started using Elasticsearch to handle my data. After many painstaking attempts to index geographic data in Elasticsearch, I was becoming concerned that I’d spend the next several years trying a never-ending list of databases, learning new skills, drowning in the digital sea….. and never complete my dissertation. Thankfully, with the help of MapButcher’s tutorial, I was finally able to index my data and perform spatial queries in a reasonable amount of time.
My search for a suitable database stopped after three. This process was incredibly valuable in that I learned many new skills and created some useful tools for myself, but ten months had elapsed before I found a suitable workflow. I thought, What about researchers who don’t have ten months to spare learning the intricacies of multiple databases? I now had three different workflows for working with spatially enabled databases, but each was somewhat clunky. Since I knew I’d be working with Elasticsearch for quite some time, it was in my best interest to create something more efficient. If I could make a generalizable tool, others could benefit from it and avoid some of the mishaps I encountered along the way. Combine these elements with my need to present something at the AAG Annual Meeting (and save dissertation article presentations for later), and the stars had wonderfully aligned. I decided to create a software tool to aid geographers in inserting/indexing spatial data.
There really was no need to create a shapefile to PostGIS tool, since it
already exists: shp2pgsql
. What I needed (and sought to create) was the NoSQL
equivalent, which I call shp2nosql
. Currently it works with Elaticsearch and
MongoDB, but I’d love others to contribute and make the tool more robust,
suggest new features, and possibly support more databases. Technical details can
be found on my GitHub page here, and
the presentation I delivered at the AAG Annual Meeting can be
found here.


@* * This template is called from the `index` template. This template * handles the rendering of the page header and body tags. It takes * two arguments, a `String` for the title of the page and an `Html` * object to insert into the body of the page. *@ @import controllers.security.LoginController @import controllers.security @(title: String, user: models.users.User)(content: Html)
@* Here's where we render the page title `String`. *@


Andrzej Kuncewicz has over 24 years of experience working as a contractor in Ontario, specializing in carpentry, tiling and finishings. Working on building homes in the GTA, maintenance in corporate office, and cottages in the Muskoka region he has worked on jobs ranging from small repairs to entire building foundations. Now living in Huntsville, Ontario he is looking to continue his passion in woodworking and repairs to make your home look like new.


"Minimalism is a tool to rid yourself of life’s excess in favor of focusing on what’s important—so you can find happiness, fulfillment, and freedom."
---- The Minimalists
Minimalism is the act of clearing clutter for one's life and making room for what is most important.
Minimalism does not look the same for everyone.
According to Colin Wright: "Minimalism is about the reassessment of your prorities"
Joshua Becker gives 28 benefits to Minimalism. You can find them here.


Precision agriculture
“The world will need to produce 70% more food in 2050 than it did in 2006 in order to feed the growing population of the Earth”
---- Food and Agriculture Organization of the UNA potential solution to food crisis
The main concept of precision agriculture is to increase the accuracy and controllability of the farming practice. By gaining the real-time feedback, the inputs to the farming could be reduced without affecting the yield so that the production efficiency can be greatly increased.
It could potentially alleviate the food crisis brought by the increasing world population, which is estimated to reach 9.15 billion by 2050. The market of precision agriculture keeps growing in recent years, which now sees an annual revenue of $1.8 billion with a growth rate of 12.8%.


The game brings together the concepts you have learned this semester. We will work as a class on the design and you will implement the pieces of the game in teams.
The game brings together the concepts you have learned this semester. We will work as a class on the design and you will implement the pieces of the game in teams.


gretty {
// ...
integrationTestTask = 'integrationTest' // name of existing gradle task
// ...
}
gretty {
// ...
integrationTestTask = 'integrationTest' // name of existing gradle task
// ...
}
When you run gradle integrationTest
from command-line, Gretty starts servlet-container before integrationTest
task and stops it after.
|
Note
|
Gretty does not define integration test task nor does it augment it in any way. All it does is start and stop servlet-container. |
When your integration task supports JavaForkOptions interface (for example, when integration task is instance of Test class), Gretty passes the following system properties to the java process of integration task:
| Property | Content/Purpose |
|---|---|
gretty.contextPath |
The context path of the current web-app project |
gretty.httpPort |
Currently used HTTP port, when HTTP protocol is enabled; null otherwise. |
gretty.port |
same as httpPort |
gretty.httpBaseURI |
|
gretty.baseURI |
same as gretty.httpBaseURI |
gretty.httpsPort |
Currently used HTTPS port, when HTTPS protocol is enabled; null otherwise. |
gretty.httpsBaseURI |
|
Your test code can access these properties via System.getProperty function. This allows to parametrize test code with Gretty-specific parameters.
See also: appBeforeIntegrationTest task and appAfterIntegrationTest task.


| 1 | package com.fasterxml.aalto.dom; | |
| 2 | ||
| 3 | import java.util.*; | |
| 4 | ||
| 5 | import javax.xml.XMLConstants; | |
| 6 | import javax.xml.namespace.NamespaceContext; | |
| 7 | ||
| 8 | /* !!! 18-Dec-2008, tatu: Copied from Woodstox almost verbatim, should be | |
| 9 | * replaced/removed/rewritten soon. | |
| 10 | */ | |
| 11 | /** | |
| 12 | * Helper class that implements "bijective map" (Map that allows use of values | |
| 13 | * as keys and vice versa, bidirectional access), and is specifically | |
| 14 | * used for storing namespace binding information. | |
| 15 | * One thing worth noting is that Strings stored are NOT assumed to have | |
| 16 | * been unified (interned) -- if they were, different implementation would | |
| 17 | * be more optimal. | |
| 18 | */ | |
| 19 | public final class BijectiveNsMap | |
| 20 | { | |
| 21 | /* | |
| 22 | /////////////////////////////////////////////// | |
| 23 | // Constants | |
| 24 | /////////////////////////////////////////////// | |
| 25 | */ | |
| 26 | ||
| 27 | /** | |
| 28 | * Let's plan for having up to 14 explicit namespace declarations (2 | |
| 29 | * defaults, for 'xml' and 'xmlns', are pre-populated) | |
| 30 | */ | |
| 31 | final static int DEFAULT_ARRAY_SIZE = 2 * 16; | |
| 32 | ||
| 33 | /* | |
| 34 | /////////////////////////////////////////////// | |
| 35 | // Member vars | |
| 36 | /////////////////////////////////////////////// | |
| 37 | */ | |
| 38 | ||
| 39 | final int _scopeStart; | |
| 40 | ||
| 41 | /** | |
| 42 | * Array that contains { prefix, ns-uri } pairs, up to (but not including) | |
| 43 | * index {@link #_scopeEnd}. | |
| 44 | */ | |
| 45 | String[] _nsStrings; | |
| 46 | ||
| 47 | int _scopeEnd; | |
| 48 | ||
| 49 | /* | |
| 50 | /////////////////////////////////////////////// | |
| 51 | // Life-cycle | |
| 52 | /////////////////////////////////////////////// | |
| 53 | */ | |
| 54 | ||
| 55 | private BijectiveNsMap(int scopeStart, String[] strs) | |
| 56 | { | |
| 57 | _scopeStart = _scopeEnd = scopeStart; | |
| 58 | _nsStrings = strs; | |
| 59 | } | |
| 60 | ||
| 61 | public static BijectiveNsMap createEmpty() | |
| 62 | { | |
| 63 | String[] strs = new String[DEFAULT_ARRAY_SIZE]; | |
| 64 | ||
| 65 | strs[0] = XMLConstants.XML_NS_PREFIX; | |
| 66 | strs[1] = XMLConstants.XML_NS_URI; | |
| 67 | strs[2] = XMLConstants.XMLNS_ATTRIBUTE; | |
| 68 | strs[3] = XMLConstants.XMLNS_ATTRIBUTE_NS_URI; | |
| 69 | ||
| 70 | /* Let's consider pre-defined ones to be 'out of scope', i.e. | |
| 71 | * conceptually be part of (missing) parent's mappings. | |
| 72 | */ | |
| 73 |
1
1. createEmpty : mutated return of Object value for com/fasterxml/aalto/dom/BijectiveNsMap::createEmpty to ( if (x != null) null else throw new RuntimeException ) → NO_COVERAGE |
return new BijectiveNsMap(4, strs); |
| 74 | } | |
| 75 | ||
| 76 | public BijectiveNsMap createChild() { | |
| 77 |
1
1. createChild : mutated return of Object value for com/fasterxml/aalto/dom/BijectiveNsMap::createChild to ( if (x != null) null else throw new RuntimeException ) → NO_COVERAGE |
return new BijectiveNsMap(_scopeEnd, _nsStrings); |
| 78 | } | |
| 79 | ||
| 80 | /* | |
| 81 | /////////////////////////////////////////////// | |
| 82 | // Public API, accessors | |
| 83 | /////////////////////////////////////////////// | |
| 84 | */ | |
| 85 | ||
| 86 | public String findUriByPrefix(String prefix) | |
| 87 | { | |
| 88 | /* This is quite simple: just need to locate the last mapping | |
| 89 | * for the prefix, if any: | |
| 90 | */ | |
| 91 | String[] strs = _nsStrings; | |
| 92 | int phash = prefix.hashCode(); | |
| 93 | ||
| 94 |
4
1. findUriByPrefix : changed conditional boundary → NO_COVERAGE 2. findUriByPrefix : Changed increment from -2 to 2 → NO_COVERAGE 3. findUriByPrefix : Replaced integer subtraction with addition → NO_COVERAGE 4. findUriByPrefix : negated conditional → NO_COVERAGE |
for (int ix = _scopeEnd - 2; ix >= 0; ix -= 2) { |
| 95 | String thisP = strs[ix]; | |
| 96 |
1
1. findUriByPrefix : negated conditional → NO_COVERAGE |
if (thisP == prefix || |
| 97 |
2
1. findUriByPrefix : negated conditional → NO_COVERAGE 2. findUriByPrefix : negated conditional → NO_COVERAGE |
(thisP.hashCode() == phash && thisP.equals(prefix))) { |
| 98 |
2
1. findUriByPrefix : Replaced integer addition with subtraction → NO_COVERAGE 2. findUriByPrefix : mutated return of Object value for com/fasterxml/aalto/dom/BijectiveNsMap::findUriByPrefix to ( if (x != null) null else throw new RuntimeException ) → NO_COVERAGE |
return strs[ix+1]; |
| 99 | } | |
| 100 | } | |
| 101 |
1
1. findUriByPrefix : mutated return of Object value for com/fasterxml/aalto/dom/BijectiveNsMap::findUriByPrefix to ( if (x != null) null else throw new RuntimeException ) → NO_COVERAGE |
return null; |
| 102 | } | |
| 103 | ||
| 104 | public String findPrefixByUri(String uri) | |
| 105 | { | |
| 106 | /* Finding a valid binding for the given URI is trickier, since | |
| 107 | * mappings can be masked by others... so, we need to first find | |
| 108 | * most recent binding, from the freshest one, and then verify | |
| 109 | * it's still unmasked; if not, continue with the first loop, | |
| 110 | * and so on. | |
| 111 | */ | |
| 112 | ||
| 113 | String[] strs = _nsStrings; | |
| 114 | int uhash = uri.hashCode(); | |
| 115 | ||
| 116 | main_loop: | |
| 117 |
4
1. findPrefixByUri : changed conditional boundary → NO_COVERAGE 2. findPrefixByUri : Changed increment from -2 to 2 → NO_COVERAGE 3. findPrefixByUri : Replaced integer subtraction with addition → NO_COVERAGE 4. findPrefixByUri : negated conditional → NO_COVERAGE |
for (int ix = _scopeEnd - 1; ix > 0; ix -= 2) { |
| 118 | String thisU = strs[ix]; | |
| 119 |
1
1. findPrefixByUri : negated conditional → NO_COVERAGE |
if (thisU == uri || |
| 120 |
2
1. findPrefixByUri : negated conditional → NO_COVERAGE 2. findPrefixByUri : negated conditional → NO_COVERAGE |
(thisU.hashCode() == uhash && thisU.equals(uri))) { |
| 121 | // match, but has it been masked? | |
| 122 |
1
1. findPrefixByUri : Replaced integer subtraction with addition → NO_COVERAGE |
String prefix = strs[ix-1]; |
| 123 | /* only need to check, if it wasn't within current scope | |
| 124 | * (no masking allowed within scopes) | |
| 125 | */ | |
| 126 |
2
1. findPrefixByUri : changed conditional boundary → NO_COVERAGE 2. findPrefixByUri : negated conditional → NO_COVERAGE |
if (ix < _scopeStart) { |
| 127 | int phash = prefix.hashCode(); | |
| 128 |
4
1. findPrefixByUri : changed conditional boundary → NO_COVERAGE 2. findPrefixByUri : Changed increment from 2 to -2 → NO_COVERAGE 3. findPrefixByUri : Replaced integer subtraction with addition → NO_COVERAGE 4. findPrefixByUri : negated conditional → NO_COVERAGE |
for (int j = ix-1, end = _scopeEnd; j < end; j += 2) { |
| 129 | String thisP = strs[ix]; | |
| 130 |
1
1. findPrefixByUri : negated conditional → NO_COVERAGE |
if (thisP == prefix || |
| 131 |
2
1. findPrefixByUri : negated conditional → NO_COVERAGE 2. findPrefixByUri : negated conditional → NO_COVERAGE |
(thisP.hashCode() == phash && thisP.equals(prefix))) { |
| 132 | // Masking... got to continue the main loop: | |
| 133 | continue main_loop; | |
| 134 | } | |
| 135 | } | |
| 136 | } | |
| 137 | // Ok, unmasked one, can return | |
| 138 |
1
1. findPrefixByUri : mutated return of Object value for com/fasterxml/aalto/dom/BijectiveNsMap::findPrefixByUri to ( if (x != null) null else throw new RuntimeException ) → NO_COVERAGE |
return prefix; |
| 139 | } | |
| 140 | } | |
| 141 |
1
1. findPrefixByUri : mutated return of Object value for com/fasterxml/aalto/dom/BijectiveNsMap::findPrefixByUri to ( if (x != null) null else throw new RuntimeException ) → NO_COVERAGE |
return null; |
| 142 | } | |
| 143 | ||
| 144 | public List<String> getPrefixesBoundToUri(String uri, List<String> l) | |
| 145 | { | |
| 146 | /* Same problems (masking) apply here, as well as with | |
| 147 | * findPrefixByUri... | |
| 148 | */ | |
| 149 | String[] strs = _nsStrings; | |
| 150 | int uhash = uri.hashCode(); | |
| 151 | ||
| 152 | main_loop: | |
| 153 |
4
1. getPrefixesBoundToUri : changed conditional boundary → NO_COVERAGE 2. getPrefixesBoundToUri : Changed increment from -2 to 2 → NO_COVERAGE 3. getPrefixesBoundToUri : Replaced integer subtraction with addition → NO_COVERAGE 4. getPrefixesBoundToUri : negated conditional → NO_COVERAGE |
for (int ix = _scopeEnd - 1; ix > 0; ix -= 2) { |
| 154 | String thisU = strs[ix]; | |
| 155 |
1
1. getPrefixesBoundToUri : negated conditional → NO_COVERAGE |
if (thisU == uri || |
| 156 |
2
1. getPrefixesBoundToUri : negated conditional → NO_COVERAGE 2. getPrefixesBoundToUri : negated conditional → NO_COVERAGE |
(thisU.hashCode() == uhash && thisU.equals(uri))) { |
| 157 | // match, but has it been masked? | |
| 158 |
1
1. getPrefixesBoundToUri : Replaced integer subtraction with addition → NO_COVERAGE |
String prefix = strs[ix-1]; |
| 159 | /* only need to check, if it wasn't within current scope | |
| 160 | * (no masking allowed within scopes) | |
| 161 | */ | |
| 162 |
2
1. getPrefixesBoundToUri : changed conditional boundary → NO_COVERAGE 2. getPrefixesBoundToUri : negated conditional → NO_COVERAGE |
if (ix < _scopeStart) { |
| 163 | int phash = prefix.hashCode(); | |
| 164 |
4
1. getPrefixesBoundToUri : changed conditional boundary → NO_COVERAGE 2. getPrefixesBoundToUri : Changed increment from 2 to -2 → NO_COVERAGE 3. getPrefixesBoundToUri : Replaced integer subtraction with addition → NO_COVERAGE 4. getPrefixesBoundToUri : negated conditional → NO_COVERAGE |
for (int j = ix-1, end = _scopeEnd; j < end; j += 2) { |
| 165 | String thisP = strs[ix]; | |
| 166 |
1
1. getPrefixesBoundToUri : negated conditional → NO_COVERAGE |
if (thisP == prefix || |
| 167 |
2
1. getPrefixesBoundToUri : negated conditional → NO_COVERAGE 2. getPrefixesBoundToUri : negated conditional → NO_COVERAGE |
(thisP.hashCode() == phash && thisP.equals(prefix))) { |
| 168 | // Masking... got to continue the main loop: | |
| 169 | continue main_loop; | |
| 170 | } | |
| 171 | } | |
| 172 | } | |
| 173 | // Ok, unmasked one, can add | |
| 174 |
1
1. getPrefixesBoundToUri : negated conditional → NO_COVERAGE |
if (l == null) { |
| 175 | l = new ArrayList<String>(); | |
| 176 | } | |
| 177 | l.add(prefix); | |
| 178 | } | |
| 179 | } | |
| 180 |
1
1. getPrefixesBoundToUri : mutated return of Object value for com/fasterxml/aalto/dom/BijectiveNsMap::getPrefixesBoundToUri to ( if (x != null) null else throw new RuntimeException ) → NO_COVERAGE |
return l; |
| 181 | } | |
| 182 | ||
| 183 | public int size() { | |
| 184 |
2
1. size : Replaced Shift Right with Shift Left → NO_COVERAGE 2. size : replaced return of integer sized value with (x == 0 ? 1 : 0) → NO_COVERAGE |
return (_scopeEnd >> 1); |
| 185 | } | |
| 186 | ||
| 187 | public int localSize() { | |
| 188 |
3
1. localSize : Replaced integer subtraction with addition → NO_COVERAGE 2. localSize : Replaced Shift Right with Shift Left → NO_COVERAGE 3. localSize : replaced return of integer sized value with (x == 0 ? 1 : 0) → NO_COVERAGE |
return ((_scopeEnd - _scopeStart) >> 1); |
| 189 | } | |
| 190 | ||
| 191 | /* | |
| 192 | /////////////////////////////////////////////// | |
| 193 | // Public API, mutators | |
| 194 | /////////////////////////////////////////////// | |
| 195 | */ | |
| 196 | ||
| 197 | /** | |
| 198 | * Method to add a new prefix-to-URI mapping for the current scope. | |
| 199 | * Note that it should NOT be used for the default namespace | |
| 200 | * declaration | |
| 201 | * | |
| 202 | * @param prefix Prefix to bind | |
| 203 | * @param uri URI to bind to the prefix | |
| 204 | * | |
| 205 | * @return If the prefix was already bound, the URI it was bound to: | |
| 206 | * null if it's a new binding for the current scope. | |
| 207 | */ | |
| 208 | public String addMapping(String prefix, String uri) | |
| 209 | { | |
| 210 | String[] strs = _nsStrings; | |
| 211 | int phash = prefix.hashCode(); | |
| 212 | ||
| 213 |
3
1. addMapping : changed conditional boundary → NO_COVERAGE 2. addMapping : Changed increment from 2 to -2 → NO_COVERAGE 3. addMapping : negated conditional → NO_COVERAGE |
for (int ix = _scopeStart, end = _scopeEnd; ix < end; ix += 2) { |
| 214 | String thisP = strs[ix]; | |
| 215 |
1
1. addMapping : negated conditional → NO_COVERAGE |
if (thisP == prefix || |
| 216 |
2
1. addMapping : negated conditional → NO_COVERAGE 2. addMapping : negated conditional → NO_COVERAGE |
(thisP.hashCode() == phash && thisP.equals(prefix))) { |
| 217 | // Overriding an existing mapping | |
| 218 |
1
1. addMapping : Replaced integer addition with subtraction → NO_COVERAGE |
String old = strs[ix+1]; |
| 219 |
1
1. addMapping : Replaced integer addition with subtraction → NO_COVERAGE |
strs[ix+1] = uri; |
| 220 |
1
1. addMapping : mutated return of Object value for com/fasterxml/aalto/dom/BijectiveNsMap::addMapping to ( if (x != null) null else throw new RuntimeException ) → NO_COVERAGE |
return old; |
| 221 | } | |
| 222 | } | |
| 223 | // no previous binding, let's just add it at the end | |
| 224 |
2
1. addMapping : changed conditional boundary → NO_COVERAGE 2. addMapping : negated conditional → NO_COVERAGE |
if (_scopeEnd >= strs.length) { |
| 225 | // let's just double the array sizes... | |
| 226 |
1
1. addMapping : Replaced Shift Left with Shift Right → NO_COVERAGE |
strs = Arrays.copyOf(strs, (strs.length << 1)); |
| 227 | _nsStrings = strs; | |
| 228 | } | |
| 229 |
1
1. addMapping : Replaced integer addition with subtraction → NO_COVERAGE |
strs[_scopeEnd++] = prefix; |
| 230 |
1
1. addMapping : Replaced integer addition with subtraction → NO_COVERAGE |
strs[_scopeEnd++] = uri; |
| 231 | ||
| 232 |
1
1. addMapping : mutated return of Object value for com/fasterxml/aalto/dom/BijectiveNsMap::addMapping to ( if (x != null) null else throw new RuntimeException ) → NO_COVERAGE |
return null; |
| 233 | } | |
| 234 | ||
| 235 | /** | |
| 236 | * Method used to add a dynamic binding, and return the prefix | |
| 237 | * used to bind the specified namespace URI. | |
| 238 | */ | |
| 239 | public String addGeneratedMapping(String prefixBase, NamespaceContext ctxt, | |
| 240 | String uri, int[] seqArr) | |
| 241 | { | |
| 242 | String[] strs = _nsStrings; | |
| 243 | int seqNr = seqArr[0]; | |
| 244 | String prefix; | |
| 245 | ||
| 246 | main_loop: | |
| 247 | while (true) { | |
| 248 | /* We better intern the resulting prefix? Or not? | |
| 249 | * TODO: maybe soft cache these for other docs? | |
| 250 | */ | |
| 251 | prefix = (prefixBase + seqNr).intern(); | |
| 252 |
1
1. addGeneratedMapping : Changed increment from 1 to -1 → NO_COVERAGE |
++seqNr; |
| 253 | ||
| 254 | /* Ok, let's see if we have a mapping (masked or not) for | |
| 255 | * the prefix. If we do, let's just not use it: we could | |
| 256 | * of course mask it (unless it's in current scope), but | |
| 257 | * it's easier to just get a "virgin" prefix... | |
| 258 | */ | |
| 259 | int phash = prefix.hashCode(); | |
| 260 | | |
| 261 |
4
1. addGeneratedMapping : changed conditional boundary → NO_COVERAGE 2. addGeneratedMapping : Changed increment from -2 to 2 → NO_COVERAGE 3. addGeneratedMapping : Replaced integer subtraction with addition → NO_COVERAGE 4. addGeneratedMapping : negated conditional → NO_COVERAGE |
for (int ix = _scopeEnd - 2; ix >= 0; ix -= 2) { |
| 262 | String thisP = strs[ix]; | |
| 263 |
1
1. addGeneratedMapping : negated conditional → NO_COVERAGE |
if (thisP == prefix || |
| 264 |
2
1. addGeneratedMapping : negated conditional → NO_COVERAGE 2. addGeneratedMapping : negated conditional → NO_COVERAGE |
(thisP.hashCode() == phash && thisP.equals(prefix))) { |
| 265 | continue main_loop; | |
| 266 | } | |
| 267 | } | |
| 268 | /* So far so good... but do we have a root context that might | |
| 269 | * have something too? | |
| 270 | */ | |
| 271 | ||
| 272 |
2
1. addGeneratedMapping : negated conditional → NO_COVERAGE 2. addGeneratedMapping : negated conditional → NO_COVERAGE |
if (ctxt != null && ctxt.getNamespaceURI(prefix) != null) { |
| 273 | continue; | |
| 274 | } | |
| 275 | break; | |
| 276 | } | |
| 277 | seqArr[0] = seqNr; | |
| 278 | ||
| 279 | // Ok, good; then let's just add it in... | |
| 280 |
2
1. addGeneratedMapping : changed conditional boundary → NO_COVERAGE 2. addGeneratedMapping : negated conditional → NO_COVERAGE |
if (_scopeEnd >= strs.length) { |
| 281 | // let's just double the array sizes... | |
| 282 |
1
1. addGeneratedMapping : Replaced Shift Left with Shift Right → NO_COVERAGE |
strs = Arrays.copyOf(strs, (strs.length << 1)); |
| 283 | _nsStrings = strs; | |
| 284 | } | |
| 285 |
1
1. addGeneratedMapping : Replaced integer addition with subtraction → NO_COVERAGE |
strs[_scopeEnd++] = prefix; |
| 286 |
1
1. addGeneratedMapping : Replaced integer addition with subtraction → NO_COVERAGE |
strs[_scopeEnd++] = uri; |
| 287 | ||
| 288 |
1
1. addGeneratedMapping : mutated return of Object value for com/fasterxml/aalto/dom/BijectiveNsMap::addGeneratedMapping to ( if (x != null) null else throw new RuntimeException ) → NO_COVERAGE |
return prefix; |
| 289 | } | |
| 290 | } | |
Mutations | ||
| 73 |
1.1 |
|
| 77 |
1.1 |
|
| 94 |
1.1 2.2 3.3 4.4 |
|
| 96 |
1.1 |
|
| 97 |
1.1 2.2 |
|
| 98 |
1.1 2.2 |
|
| 101 |
1.1 |
|
| 117 |
1.1 2.2 3.3 4.4 |
|
| 119 |
1.1 |
|
| 120 |
1.1 2.2 |
|
| 122 |
1.1 |
|
| 126 |
1.1 2.2 |
|
| 128 |
1.1 2.2 3.3 4.4 |
|
| 130 |
1.1 |
|
| 131 |
1.1 2.2 |
|
| 138 |
1.1 |
|
| 141 |
1.1 |
|
| 153 |
1.1 2.2 3.3 4.4 |
|
| 155 |
1.1 |
|
| 156 |
1.1 2.2 |
|
| 158 |
1.1 |
|
| 162 |
1.1 2.2 |
|
| 164 |
1.1 2.2 3.3 4.4 |
|
| 166 |
1.1 |
|
| 167 |
1.1 2.2 |
|
| 174 |
1.1 |
|
| 180 |
1.1 |
|
| 184 |
1.1 2.2 |
|
| 188 |
1.1 2.2 3.3 |
|
| 213 |
1.1 2.2 3.3 |
|
| 215 |
1.1 |
|
| 216 |
1.1 2.2 |
|
| 218 |
1.1 |
|
| 219 |
1.1 |
|
| 220 |
1.1 |
|
| 224 |
1.1 2.2 |
|
| 226 |
1.1 |
|
| 229 |
1.1 |
|
| 230 |
1.1 |
|
| 232 |
1.1 |
|
| 252 |
1.1 |
|
| 261 |
1.1 2.2 3.3 4.4 |
|
| 263 |
1.1 |
|
| 264 |
1.1 2.2 |
|
| 272 |
1.1 2.2 |
|
| 280 |
1.1 2.2 |
|
| 282 |
1.1 |
|
| 285 |
1.1 |
|
| 286 |
1.1 |
|
| 288 |
1.1 |


The text here is hidden in the image on the top-right-hand side. The top-left image is the original. Can't tell the difference, right? That's thanks to steganography - we're embedding bits of the text by changing the brightness of these pixels *ever* so slightly. Go ahead and type something here, and watch the images change. The bottom-left image is the text as a binary grid, and the bottom-right image is an amplification of the changes we're making.


Ride offer Requests
1
John Kariuki
30th februry at 2:30 PM
umo - k.road
2
Jane jim
1st March at 8:00 AM
keno - thika
3
Naomi kim
14th March at 11:25 AM
Juja - Kasarani
4
kim jing
18th March at 12:05 PM
Rongai - Rwaka
5
joseph david
22nd March at 5:30 PM
Nandi - Pokot
6
kiama john
30th March at 1:00 PM
F.A - Milimani


module Int: Int
typet =
int
The type for integer values.
val zero : int
zero
is the integer 0
.
val one : int
one
is the integer 1
.
val minus_one : int
minus_one
is the integer -1
.
val neg : int -> int
neg x
is ~-x
.
val add : int -> int -> int
add x y
is the addition x + y
.
val sub : int -> int -> int
sub x y
is the subtraction x - y
.
val mul : int -> int -> int
mul x y
is the multiplication x * y
.
val div : int -> int -> int
div x y
is the division x / y
. See (/)
for details.
val rem : int -> int -> int
rem x y
is the remainder x mod y
. See (mod)
for details.
val succ : int -> int
succ x
is add x 1
.
val pred : int -> int
pred x
is sub x 1
.
val abs : int -> int
abs x
is the absolute value of x
. That is x
if x
is positive
and neg x
if x
is negative. Warning. This may be negative if
the argument is Int.min_int
.
val max_int : int
max_int
is the greatest representable integer,
2{^[Sys.int_size - 1]} - 1
.
val min_int : int
min_int
is the smallest representable integer,
-2{^[Sys.int_size - 1]}
.
val logand : int -> int -> int
logand x y
is the bitwise logical and of x
and y
.
val logor : int -> int -> int
logor x y
is the bitwise logical or of x
and y
.
val logxor : int -> int -> int
logxor x y
is the bitwise logical exclusive or of x
and y
.
val lognot : int -> int
lognot x
is the bitwise logical negation of x
.
val shift_left : int -> int -> int
shift_left x n
shifts x
to the left by n
bits. The result
is unspecified if n < 0
or n >
Sys.int_size
.
val shift_right : int -> int -> int
shift_right x n
shifts x
to the right by n
bits. This is an
arithmetic shift: the sign bit of x
is replicated and inserted
in the vacated bits. The result is unspecified if n < 0
or
n >
Sys.int_size
.
val shift_right_logical : int -> int -> int
shift_right x n
shifts x
to the right by n
bits. This is a
logical shift: zeroes are inserted in the vacated bits regardless
of the sign of x
. The result is unspecified if n < 0
or
n >
Sys.int_size
.
val equal : int -> int -> bool
equal x y
is true
if and only if x = y
.
val compare : int -> int -> int
compare x y
is compare
x y
but more efficient.
val min : int -> int -> int
Return the smaller of the two arguments.
val max : int -> int -> int
Return the greater of the two arguments.
val to_float : int -> float
to_float x
is x
as a floating point number.
val of_float : float -> int
of_float x
truncates x
to an integer. The result is
unspecified if the argument is nan
or falls outside the range of
representable integers.
val to_string : int -> string
to_string x
is the written representation of x
in decimal.


ORGENIC UI
It's possible to change ORGENIC UI themes at application runtime without reloading.
Choose your favourite theme!
Spinner
Progress
Layout Container
Datepicker
Calendar
Dialog
Typography
Expander
Datatable
Form Item
Text Input
Textarea
Number Input
Password Input
Radio Buttons
Tabs
Checkbox
Toggle Switch
Button
List
Combobox


This website helps user to find personel skilled in interior decoration ,depending whether the user wants
to renovate the house,make changes to his/her designs or has a new home to decorate.
It also provde insights on the latest designs in the market and consultancy services.
To acces the website visit Smile interior ltd
This website describes my fevorite pet and reasons
to why i like it and also gives you chance on how to aquire one if yo like them.
To check it out visit pet-website


| Class | Description |
|---|---|
| AtomicAnalysisSwitch |
This switch class picks AGCL annex sub-clauses, extract the relevant behaviour and contracts and delegates the
actual analysis to the concrete algorithm class
AtomicAnalysis . |
| CompositeAnalysisSwitch |
This switch class picks AGCL annex sub-clauses, extract the relevant contracts and delegates the
actual analysis to the concrete algorithm class
CompositeAnalysis . |
| ImplementationParentConformanceSwitch |
This switch class picks AGCL annex sub-clauses, extract the relevant contracts and delegates the
actual analysis to the concrete algorithm class
ImplementationParentConformanceAnalysis . |
| ImplementationTypeConformanceSwitch |
This switch class picks AGCL annex sub-clauses, extract the relevant behaviour and contracts and delegates the
actual analysis to the concrete algorithm class
ImplementationTypeConformanceAnalysis . |
| PSL2NuSMVSpecConverterExplicitSwitch |
This visitor transforms
Input and Output atomic propositions into Var so that they can
all be serialized as NuSMV state variables. |
| PSLAtomicPropositionsSwitch |
This switch obtains the set of atomic propositions in a PSL expression.
|
| PSLTransformAssumptionAtomicPropositionsSwitch |
This map transforms atomic propositions in a guarantee of the form
|
| PSLTransformGuaranteeAtomicPropositionsSwitch |
This map transforms atomic propositions in a guarantee of the form
|
| TypeParentConformanceSwitch |
This switch class picks AGCL annex sub-clauses, extract the relevant contracts and delegates the
actual analysis to the concrete algorithm class
TypeParentConformanceAnalysis . |


US Supreme Court shields Trump’s financial records from House
by The Associated PressWASHINGTON — The Supreme Court is shielding President Donald Trump’s financial records from House Democrats for now.
The delay allows the justices to decide how to handle the House subpoena and a similar demand from the Manhattan district attorney at the same time.
The House’s quest for the records is not part of the ongoing impeachment inquiry, but the court’s action probably means Democrats will not have the records before an expected vote on impeachment by year’s end.
The justices are giving Trump until Dec. 5 to file a full appeal of a lower court ruling calling for his accountants to turn over the records. The president’s lawyers are certain to comply, and the court’s decision about whether to take up the case is not expected before mid-January.


--- layout: post date: 2012-06-10 time: "09:00:00" authors: ["Greg Wilson"] title: First Workshop on Maintainable Software Practices in e-Science tags: ["Community", "Noticed"] ---
9 October 2012
Co-located with 8th IEEE International Conference on eScience, Chicago
This workshop will focus on the issues relating to the development and maintenance of software that can endure past the limited periods of defined project durations and project funding, and go beyond software engineering best practice to address aspects of cultural, organisational and policy change. By bringing together all those with an interest in ensuring the longer term development and use of software for research, including researchers, developers, research computing specialists, software engineers, infrastructure providers, facilitators, and funders, the goal of this workshop is to understand what software practices can be successfully applied and which lead to long-term improvements in the development of software for e-Science.
As part of the workshop we will also be running a panel on the topic of culture change in software management for research, featuring invited speakers from a variety of disciplines who have experienced or instigated these changes, to talk about their real life experiences of scientists of what worked and didn't work for them.
We invite the submission of work that is related to the topics below. The papers can be either short (4 pages) position/experiences abstracts, or full (8 pages) research papers featuring original, unpublished work.
Topics of interest include:


[Container objects][api.type.ContainerObject] are a special kind of group in which the children are clipped by the bounds of the container.
The goal of containers is to eliminate the need for you to create custom rectangular mask images to create clipping bounds.
Snapshot objects are easily created using Corona's display.newContainer() factory method.
The following example creates a 300x300 container using the aquarium background image from the 'Fishies' sample.
The container clips the aquarium image so you only see the center of the original full 320x480 image. And as the height shrinks, the container will eventually clip the text object as well.
local container = display.newContainer( 300, 300 )
container:translate( 160, 240 ) -- center the container
local bkgd = display.newImage( "aquariumbackgroundIPhone.jpg" )
container:insert( bkgd, true ) -- insert and center bkgd
local myText = display.newText( "Hello, World!", 0, 0, native.systemFont, 40 )
myText:setFillColor( 255,255,0 )
container:insert( myText, true ) -- insert and center text
-- dynamically resize the height of the container
transition.to( container, {height = 20, time=2000} )
Containers are just special versions of groups. The only difference is children do not render outside the container's bounds.
Container bounds can be changed via the width
and height
properties, as shown in the example above.
The anchor points of a container control the positioning of the clipping bounds.
By default, the clip bounds are centered about the container's origin. You can adjust the anchor to control this.
Unlike groups, the anchorChildren
property defaults to true
. This means the children will move in lock-step with the clipping bounds when the anchor properties change.
When you turn the anchorChildren
property defaults to false
, you allow the anchor to position the clip bounds independently from the children.
In the diagram below, we place a background aquarium image and a "Hello World" text object inside a group. To illustrate the clipping region of the container, we draw the entire group below the container and set the alpha to 0.3.
The container's origin is denoted by the white dot in the center of the 3 images below. Each image shows the same container (with the same position and origin) but varying the anchorY
property:
1
which means the bottom of the clip is anchored to the container's origin.0.5
which means the center of the clip is anchored to the container's origin.0
which means the top of the clip is anchored to the container's origin.The impact of containers on texture memory is minimal, so it is to your advantage to use containers instead of creating your own mask textures.
Containers work by creating a dynamic (rectangular) mask for you under the hood. As a result, they consume a texture unit. This mask is implicitly applied to the group, and is distinct from the object:setMask().
You should avoid nesting containers inside containers (inside other containers), because each nested container requires a texture unit. If your device does not have enough, containers will fail to clip.
You can determine the number of available texture units available on your device via system.getInfo("maxTextureUnits"). Keep in mind that other features consume texture units, e.g. a mask explicitly applied to a group and/or text objects.


Death toll rises as anti-government protests grip Iraq
Iraqi security forces fire live rounds and tear gas to disperse protesters near the Umm Qasr port and in Nasiriyah.
by Arwa IbrahimBaghdad, Iraq - Six people were killed and dozens wounded in Iraq's southern cities of Basra and Nasiriya as a result of clashes with security forces, according to the Iraqi human rights council.
Meanwhile in Baghdad, street battles between security sources and protesters continued as demonstrators demanding basic services, employment opportunities, and an end to corruption gathered in Tahrir Square on Sunday.
"Three protesters were killed in violent clashes with security forces in Umm Qasr, south of Basra, and 78 others were injured. Meanwhile, three protesters were killed in Nasiriya and 71 people were injured," the council said in a statement.
"We call on the government to act immediately to put an end to the excessive use of violence against protesters."
At least 330 people have been killed since the start of mass unrest in Baghdad and southern Iraq in early October, the largest demonstrations in decades.
More:
The death toll in Baghdad, Nasiriya, and Basra over the past 24 hours reached 12, according to security and medical sources. The deaths since Saturday were a result of security forces' use of live ammunition and tear gas against the protesters, the sources told Al Jazeera.
Khaled al-Mahanna, a spokesman for the ministry of interior, said on Saturday night three protesters were killed in Baghdad alone over the past 24 hours. More than 100 others were injured, including 30 members of the security forces in clashes with protesters on Ahrar Bridge.
Following weeks of on-and-off closures, Iraqi security forces reopened the entrance to Umm Qasr port near Basra on Friday after protesters blocked it since Monday.
Umm Qasr, which receives grain, oils and sugar shipments that feed a country largely dependent on imported food, was previously blocked twice in October and November with a brief resumption of operations between November 7-9. Official estimates put losses during the first week of the closure at $6bn.
The protesters had gathered to demand the opening of the road around the port town blocked by security forces in an attempt to prevent demonstrators from reaching the entrance of the facility, Iraq's largest commodities port.
Security forces also wounded at least 24 people in the Shia holy city of Karbala overnight after opening fire on demonstrators to prevent them from reaching the local government headquarters, medical and security sources said.
Rights groups have previously described the situation in Iraq as a "bloodbath" and called on the government to rein in security forces.
Protesters are demanding the overthrow of a political class seen as corrupt and serving foreign powers while many Iraqis languish in poverty without jobs, healthcare or education.


---
layout: archive
title: Lean Prover Zulip Chat Archive
permalink: 113488general/34354tacticexprininteractivemode.html
---
The archive URL format has changed. Please find this page at:
https://leanprover-community.github.io/archive/stream/113488-general/topic/.60tactic.20expr.60.20in.20interactive.20mode.html


WITNESS LIST Criminal Jurisprudence Committee (SUBCOMMITTEE ON Statute of Limitations) March 4, 2003-9:00A HB 182 On: Kepple, Robert (Texas District and County Attorneys Association)


PCT Sample accessibility statement
This is a sample accessibility statement for a fictional public sector website. It contains sample wording and guidance on what to include in your statement.
[Note: if the statement is for an app, say ‘mobile application’ instead of ‘website’.
For websites, publish the statement as a normal HTML page. Make sure it’s linked to from the home page, or from every other page on the website in a prominent place like the website footer. For mobile apps, make the statement available in the app store, on your website or both. Make sure it’s in an accessible format that everyone can use.]
Accessibility statement for [website name]
[Note: start with a brief explanation of which websites or mobile apps the statement covers.
You can have a single accessibility statement that covers multiple domains, or a separate statement for each domain or subdomain. As long as the user can access relevant accessibility information easily from any page on your website.]
This accessibility statement applies to [scope of statement, e.g. website or domain to which the statement applies].
[Note: use this section to make a brief, general statement about what the website allows disabled users to do. Base it on the evaluation covered in detail in the ‘Technical information about this website’s accessibility’ section. If you’re not confident that something is accurate, leave it out. If you’re not confident enough to say anything specific here, leave this section out completely.]
 We want as many people as possible to be able to use this website. For example, that means you should be able to:
- change colours, contrast levels and fonts
- zoom in up to 300% without the text spilling off the screen
- navigate most of the website using just a keyboard
- navigate most of the website using speech recognition software
- listen to most of the website using a screen reader (including the most recent versions of JAWS, NVDA and VoiceOver)
We’ve also made the website text as simple as possible to understand.
AbilityNet has advice on making your device easier to use if you have a disability.
How accessible this website is
[Note: use this section to provide information that a disabled user can act on - for example, avoid a particular section of the website, or request an alternative version rather than waste time trying to make it work with their assistive technology. Try to list in order of most impact to least impact.]
We know some parts of this website are not fully accessible:
- the text will not reflow in a single column when you change the size of the browser window
- you cannot modify the line height or spacing of text
- most older PDF documents are not fully accessible to screen reader software
- live video streams do not have captions
- some of our online forms are difficult to navigate using just a keyboard
- you cannot skip to the main content when using a screen reader
- there’s a limit to how far you can magnify the map on our ‘contact us’ page
Feedback and contact information
If you need information on this website in a different format like accessible PDF, large print, easy read, audio recording or braille:
- email [email address]
- call [phone number]
- [add any other contact details]
We’ll consider your request and get back to you in [number] days.
If you cannot view the map on our ‘contact us’ page, call or email us [add link to contact details page] for directions.
Reporting accessibility problems with this website
We’re always looking to improve the accessibility of this website. If you find any problems not listed on this page or think we’re not meeting accessibility requirements, contact: [provide both details of how to report these issues to your organisation, and contact details for the unit or person responsible for dealing with these reports].
Enforcement procedure
The Equality and Human Rights Commission (EHRC) is responsible for enforcing the Public Sector Bodies (Websites and Mobile Applications) (No. 2) Accessibility Regulations 2018 (the ‘accessibility regulations’). If you’re not happy with how we respond to your complaint, contact the Equality Advisory and Support Service (EASS).
[Note: if your organisation is based in Northern Ireland, refer users who want to complain to the Equalities Commission for Northern Ireland (ECNI) instead of the EASS and EHRC.]
Contacting us by phone or visiting us in person
We provide a text relay service for people who are D/deaf, hearing impaired or have a speech impediment.
Our offices have audio induction loops, or if you contact us before your visit we can arrange a British Sign Language (BSL) interpreter.
Find out how to contact us [add link to contact details page].
Technical information about this website’s accessibility
[Note: this form of wording is legally required, so do not change it.]
[Name of organisation] is committed to making its website accessible, in accordance with the Public Sector Bodies (Websites and Mobile Applications) (No. 2) Accessibility Regulations 2018.
Compliance status
[Note: say that the website is fully compliant if the website meets WCAG 2.1 AA standard in full. Say that it’s partially compliant if it meets most requirements of the WCAG 2.1 AA standard. If it does not meet most requirements of the WCAG 2.1 AA standard, say that it’s not compliant.
If your website is either partially compliant or not compliant WCAG 2.1 AA standard, you’ll need to explain why. This will be due to one or both of the following:
- non-compliances - this means the content in question is in scope of the regulations, but there’s an accessibility problem with it
- an exemption - this means the inaccessible content is out of scope of the regulations, or it’d be a disproportionate burden for you to make it accessible
There’s a legally required way of expressing the compliance status of your website, so do not change it. The 3 options are as follows:]
This website is fully compliant with the Web Content Accessibility Guidelines version 2.1 AA standard.
This website is partially compliant with the Web Content Accessibility Guidelines version 2.1 AA standard, due to [insert one of the following: ‘the non-compliances’, ‘the exemptions’ or ‘the non-compliances and exemptions’] listed below.
This website is not compliant with the Web Content Accessibility Guidelines version 2.1 AA standard. The [insert one of the following: ‘non-compliances’, ‘exemptions’ or ‘non-compliances and exemptions’] are listed below.
[Note: delete the options that do not apply.]
Non-accessible content
[Note: if the website is fully compliant with the WCAG 2.1 AA standard, you can leave the ‘Non-accessible content’ section out.
Otherwise, do not change the ‘Non-accessible content’ heading or the ‘The content listed below is non-accessible for the following reasons’ sentence - they’re legally required.
Do not change the ‘Non-compliance with the accessibility regulations’, ‘Disproportionate burden’ and ‘Content that’s not within the scope of the accessibility regulations’ subheadings: they’re also legally required.
But if you need to list a lot of problems, you can break these subsections up with further subheadings - for example, ‘Navigation and accessing information’ or ‘Interactive tools and transactions’.]
The content listed below is non-accessible for the following reasons.
Non-compliance with the accessibility regulations
[Note: In this subsection, list:
- accessibility problems
- which of the WCAG 2.1 AA success criteria the problem fails on
- when you plan to fix the problem
Do not include any problems where you’re claiming disproportionate burden, or where the problem is outside the scope of the accessibility regulations (those should go in the subsections below).]
Some images do not have a text alternative, so people using a screen reader cannot access the information. This fails WCAG 2.1 success criterion 1.1.1 (non-text content).
We plan to add text alternatives for all images by September 2020. When we publish new content we’ll make sure our use of images meets accessibility standards.
Disproportionate burden
[Note: in this subsection list accessibility problems you’re claiming would be a disproportionate burden to fix
Bear in mind that something which is a disproportionate burden now will not necessarily be a disproportionate burden forever. If the circumstances change, your ability to claim disproportionate burden may change too.]
Navigation and accessing information
There’s no way to skip the repeated content in the page header (for example, a ‘skip to main content’ option).
It’s not always possible to change the device orientation from horizontal to vertical without making it more difficult to view the content.
It’s not possible for users to change text size without some of the content overlapping.
Interactive tools and transactions
Some of our interactive forms are difficult to navigate using a keyboard. For example, because some form controls are missing a ‘label’ tag.
Our forms are built and hosted through third party software and ‘skinned’ to look like our website.
We’ve assessed the cost of fixing the issues with navigation and accessing information, and with interactive tools and transactions. We believe that doing so now would be a disproportionate burden within the meaning of the accessibility regulations. We will make another assessment when the supplier contract is up for renewal, likely to be in [rough timing].
Content that’s not within the scope of the accessibility regulations
[Note: in this subsection list accessibility problems that fall outside the scope of the accessibility regulations.]
PDFs and other documents
Some of our PDFs and Word documents are essential to providing our services. For example, we have PDFs with information on how users can access our services, and forms published as Word documents. By September 2020, we plan to either fix these or replace them with accessible HTML pages.
The accessibility regulations do not require us to fix PDFs or other documents published before 23 September 2018 if they’re not essential to providing our services. For example, we do not plan to fix [example of non-essential document].
Any new PDFs or Word documents we publish will meet accessibility standards.
Live video
We do not plan to add captions to live video streams because live video is exempt from meeting the accessibility regulations.
What we’re doing to improve accessibility
[Note: publishing an accessibility roadmap is optional. It’s a good idea to publish one if you want to be specific about the order you’re planning to tackle accessibility issues, and there’s no space to do so in the accessibility statement itself.]
Our accessibility roadmap [add link to roadmap] shows how and when we plan to improve accessibility on this website.
Preparation of this accessibility statement
[Note: the wording about when the statement was prepared is legally required, so do not change it.]
This statement was prepared on [date when it was first published]. It was last reviewed on [date when it was last reviewed].
This website was last tested on [date]. The test was carried out by [add name of organisation that carried out test, or indicate that you did your own testing].
We used this approach to deciding on a sample of pages to test [add link to explanation of how you decided which pages to test].
[Note: you do not have to use this approach to sampling, but you should link to a full explanation of what you tested and how you chose it. If you get a third party auditor to test your website for you, they should include sampling details in test report - so you can just to link to that.]
You can read the full accessibility test report [add link to report].
[Note: publishing the test report is optional, but doing so may allow you to make your accessibility statement shorter and more focused.]


The man who invented the first successful mass-produced helicopter
A Short Biography of Igor Sikorsky
Sikorsky was born on May 25, 1889 in the city of Kiev, Russian Empire (now Kyiv, Ukraine)
He was the youngest of five children.
His father, Ivan Alexeevich Sikorsky, was a professor of psychology in Saint Vladimir University (now
Taras Shevchenko National University).
Sikorsky's mother, Mariya Stefanovna Sikorskaya, was a physician who did not work professionally.
Young Igor was fond of the life and work of Leonardo da Vinci, and the stories of Jules Verne
He experimented with model flying machines, and by age 12, he had made a small rubber band-powered
helicopter.
Sikorsky began studying at the Saint Petersburg Maritime Cadet Corps, in 1903, at the age of 14.
In 1906, he determined that his future lay in engineering, so he resigned from the academy, despite his
satisfactory standing, and left the Russian Empire to study in Paris.
He returned to the Russian Empire in 1907, enrolling at the Mechanical College of the Kyiv Polytechnic
Institute.
After the academic year, Sikorsky again accompanied his father to Germany in the summer of 1908, where
he learned of the accomplishments of the Wright brothers' Flyer and Ferdinand von Zeppelin's rigid
airships. Sikorsky later said about this event: "Within twenty-four hours, I decided to change my life's
work. I would study aviation."
By the start of World War I in 1914, Sikorsky's airplane research and production business in Kyiv was
flourishing, and his factory made bombers during the war.
After the Russian revolution in 1917, Igor Sikorsky fled his homeland in early 1918.
He moved to France where he was offered a contract for the design of a new, more powerful Muromets-type
plane. But in November 1918 the war ended and the French government stopped subsidizing military orders,
and so he decided to move to the United States.
In the U.S., Sikorsky first worked as a school teacher and a lecturer, while looking for an opportunity
to work in the aviation industry.
In 1923, Sikorsky formed the Sikorsky Manufacturing Company in Roosevelt, New York.
The Sikorsky Manufacturing Company moved to Stratford, Connecticut in 1929. It became a part of the
United Aircraft and Transport Corporation (now United Technologies Corporation) in July of that
year.[42] The company manufactured flying boats, such as the S-42 "Clipper", used by Pan Am for
transatlantic flights.
His design plans eventually culminated in the first (tethered) flight of the Vought-Sikorsky VS-300 on
September 14, 1939, with the first free flight occurring eight months later on May 24, 1940. Sikorsky's
success with the VS-300 led to the R-4, which became the world's first mass-produced helicopter, in
1942.
Sikorsky passed away on October 26, 1972 in Easton, Connecticut, US


Who are we?
ROUGH CUT FILMS is a film and video production company and casting agency based in South Africa, with team members in Durban and Cape Town.
The company was founded in 2021 by a award-winning filmmaker Sipho Nuse, who seeks to use his half-a-decade of experience in theatre and the film industry to amplify the voices of Africans through the power of storytelling.
What we do
We shoot short-form films, music videos and documentaries. We also represent talent for film, theatre and voice overs.


TODO dependants requirement
TODO Disabled Child Premium requirement
TODO Client Group Premium requirement
TODO Enhanced Disability Premium requirement
TODO Family Premium requirement
TODO Severe Disability Premium requirement
TODO Carer Premium requirement
TODO Housing Costs requirement
| Income Type | |||||
|---|---|---|---|---|---|


created 01/22/00
Write an applet that displays your name centered in a circle in the middle of the applet.
Click here to go back to the main menu.
Write an applet that displays a set of three concentric circles of different colors centered in the applet.
Click here to go back to the main menu.
Draw a crude picture of a snowman with three stacked circles for the body and smaller circles for the buttons and eyes. Draw a horizontal line for the horizon.
Click here to go back to the main menu.
Draw a large asterisk * in the center of the applet by drawing three lines that intersect in the center.
Click here to go back to the main menu.
End of the Exercises


Euler’s 185th Riddle¶
In case you are interested, the riddle goes something like this:
Let be a sequence of unknown digits (colors from 0 to 9).
We are given sequences of known colors, marks the color of the index in sequence .
For each sequence we are given the number of correct colors, that is, indices in the sequence for which .
Our goal is to discover the colors of , which we are promised are unique, given the input.
This page was generated using this .rst code:¶
Euler's 185th Riddle
=====================================
.. You see, you can also link to a page that is just text and all that jazz.
|
|
In case you are interested, the riddle goes something like this:
Let :math:`\color{red}s^{*}` be a sequence of :math:`m` *unknown* digits (colors from 0 to 9).
We are given :math:`n` sequences of :math:`m` *known* colors, :math:`x_{i,j}`
marks the color of the :math:`j^{th}` index in sequence :math:`i`.
For each sequence we are given the number of *correct colors*, that is, indices in the sequence for which
:math:`x_{i,j} = s^{*}_j`.
Our goal is to discover the colors of :math:`\color{red}s^{*}`, which we are promised are unique, given the input.
|
|
This page was generated using this .rst code:
*********************************************
|
.. literalinclude:: riddle_description.rst
|
|
:ref:`Return Home <mastertoc>`


Battery Meter | The Winter Soldiers
This is a basic battery voltage meter that we made to quickly test our batteries between competitions. It uses four op-amp comparators to turn on LEDs at specific (and customizable) voltage steps.
We made this tool because we found that it's really annoying to check batteries on the robot. You have to plug the battery into the robot and then find the driver station phone to actually see the voltage, and when there's maybe ten minutes between each competition and a two-minute walk between the pits and the competition fields, you don't have much time to be checking all of the batteries this way. This meter is small and readily accessible so that you can check all of the batteries very quickly.
You can find the files to make one of these yourself on GitHub. This is an open project, so feel free to make suggestions for improvements!
Just note that this is a soldering project, and if you don't know how to solder, you should probably practice on something less densely populated than this board.


Item Code:
Item Name:
Item Name CN:
Batch No:
Vendor Name:
Location
Position
Quantity(KG)
Stock In Date
Purchase Price
FOB Price
Close


changes log
5.7
5.6
- Move boolean
loose
param to an options object, with backwards-compatibility protection.
- Add ability to opt out of special prerelease version handling with the
includePrerelease
option flag.
5.5
- Add version coercion capabilities
5.4
- Add intersection checking
5.3
5.2
- Add
prerelease(v)
that returns prerelease components
5.1
- Add Backus-Naur for ranges
- Remove excessively cute inspection methods
5.0
- Remove AMD/Browserified build artifacts
- Fix ltr and gtr when using the
*
range
- Fix for range
*
with a prerelease identifier