text:
- Dances With Bears - http://johnhelmer.net -
THREE STEPS TO BAILING OUT A RUSSIAN OLIGARCH – BUT FESCO OBJECTS TO MEETING STATE BANK SECURITY REQUIREMENT
Posted By John Helmer On December 11, 2009 @ 4:00 am In Maritime,Oligarchs | No Comments
Step-1, believe me, I have no money Step-2, you drop your money in my hand Step-3, I wave goodbye and sail on my way
By John Helmer in Moscow
Far Eastern Shipping Company (Fesco), the listed Russian dry-cargo fleet operator controlled by Sergei Generalov (left image), says it has run into a debt refinancing problem with the Russian state bank, Vneshtorgbank (VTB).
A Moscow report by Kommersant newspaper, quoting from a November 5 letter Generalov sent to the Deputy Minister of Economic Development, Oleg Saveleyev, and a report this week from the Moscow brokerage Finam, indicate that, in order to receive state repayment guarantees of up to Rb2.5 billion ($83 million), Generalov must transfer asset value and shares required by the bank. However, Generalov says he can't right now; or doesn't want to.
Instead, Generalov has lobbied the government to change the banking rules for securing bailouts to the companies listed a year ago as qualifying for strategic state support during the crisis. The leak of Generalov's letter, code N 03-3/2-0511, dated November 5, is notable for its detail and timing: it comes just before the board of directors of the European Bank of Reconstruction and Development (EBRD) meet in London to consider whether to lend Fesco $100 million. That transaction is tied in turn to the readiness of several international banks to lend new money or refinance existing loans to the loss-making transport group.
Generalov's holding Industrial Investors owns 54% of Fesco; with a current market capitalization of about $1 billion, Fesco is Generalov's most valuable asset. Asked to authenticate Generalov's letter as reported, the Fesco spokesman, Stanislav Vartanyan, did not dispute the accuracy of the Kommersant report of the letter.
Generalov started making his fortune as a protégé of Mikhail Khodorokovsky's businesses. But he has survived the conviction and imprisonment of his patron; business competition with Mikhail Fridman's Alfa group; and also the war between Russia and Georgia, where Generalov has pursued several lines of business, including gold and copper mining and vodka production. Handling the Generalov group's Russian and Georgian dealings, according to the group's website, is an American citizen and US lawyer, Joel McDonald. He claims to have been "the chief foreign advisor to the Russian Government on tax reform between 1994 and 1997". McDonald is also a director of a London unit of Generalov's holding, Industrial Investors Capital Management Limited, which has filed in the UK High Court to establish the group's reputation. A statement, read out in the High Court on July 9, 2008, acknowledged Generalov's business links with Khodorkovsky's Yukos oil company and Menatep bank, adding that Generalov "was never associated with corrupt activity during his time at those two companies." The court statement also declared that "neither Mr Generalov nor Industrial Investors have ever had any corrupt dealings with President Saakashvili of Georgia or any of his family including Timur Alasaniya." Generalov and his holding "conduct their business affairs in an honest manner", according to this record. According to the holding's website, "Industrial Investors endeavors to occupy a leading position amongst Russian investment companies in terms of track record relying on Western principles of corporate governance, accountability and transparency."
Generalov's reported letter to deputy minister Saveleyev is unusually transparent. According to the Kommersant citations, Fesco as an applicant for a state repayment guarantee is unable to meet one of the key requirements – presentation to the Finance Ministry of "fully issued and registered documents on the security of 50 % of the sum under the loan contract". "Unfortunately", Generalov is reported to have written, "as of today [Fesco] does not have sufficient unpledged shares which can be used for securitisation of obligations under the loan of VTB Bank …for the specified sum". His letter reportedly suggests that the release of this company stock for a repledging operation is unlikely before January or February of the new year.
Reports of the extent of Fesco's indebtedness to foreign and Russian banks are not news; disclosure that Fesco's stock and assets, and possibly those of the holding company and controlling shareholder as well, are insufficient, or are unavailable to secure a state repayment cover for the equivalent of about $40 million, is new. Because the value of the guarantee cover sought is relatively small, the question is — why Generalov is unable or unwilling to offer security acceptable to the state bank? That question was not answered by Generalov's spokesman Vartanyan, although he is reported as telling Kommersant that there is a shortness of time to arrange the security for the VTB transaction, not a lack of assets available to pledge. What he was quoted as telling Kommersant, Vartanyan added, is his answer to the question.
Other industry sources in Moscow claim the underlying problem is lack of unpledged assets, compounded by the recent financial difficulties of one of Fesco's international backers, Dubai Port World, and its parent, Dubai World.
The Finam brokerage reports that Russian banking and state regulations allow state guarantees for only half of a loan amount. To secure the remaining half — in this case, Rb1.25 billion ($41.7 million) — the company must pledge existing assets that are not encumbered by prior covenants, cross-default provisions, or liabilities. Although Fesco is worth just over $1 billion in current equity value, and it claims net tangible asset value of $1.7 billion (reported as of June 2008), the value of its fleet is under severe write-down pressure. "In our opinion", said Finam, "debt restructure problems could negatively affect FESCO stock prices, but we expect the company to solve these problems during the next few months."
Projections of the company's losses by bankers for this year have gone from around $1 million reported in January, to $39 million in June, and to $72 million estimated in August. What Fesco has told its banks is likely to be its loss for the year remains undisclosed in public. According to Vartanyan, "the official position of Fesco is that we do not provide numerical forecasts of future results; we rather prefer to report the results achieved."
Moore Stephens, Fesco's international auditor, reported early in the year that 49 vessels in the Fesco fleet had already been pledged as security for loans from ING, Calyon, and VTB. The net book value of the pledged fleet was reported at $636 million; according to Moore Stephens, as of June 2008 the asset value of the entire fleet was $675.9 million. This past October, it was reported that Fesco's railway subsidiary, Transgarant, had received a Rb1.45 billion ($50 million) loan, also from VTB, which the bank secured with liens over its railcar fleet. The asset value of the rolling stock was reported at June 2008 at $409 million.
Total debt is reported to be $840 million, but that is 25% less than Fesco's debt total reported at the start of the year. Short-term debt, due for repayment by the end of this month, has been estimated at $215 million.
The EBRD, which has been negotiating with Fesco management over many months for a new loan to help reorganize Fesco's financial position, has disclosed that on December 15, the bank board will consider approval of a $100 million loan to Fesco "as part of a corporate balance sheet restructuring plan, alongside other lenders". ING, Raffeisen, Citi, and Calyon are the group's main foreign lenders.
Article printed from Dances With Bears: http://johnhelmer.net
URL to article: http://johnhelmer.net/three-steps-to-bailing-out-a-russian-oligarch-%e2%80%93-but-fesco-objects-to-meeting-state-bank-security-requirement/


Republicans on the House Intelligence Committee are considering using an obscure committee rule to bypass the executive branch's declassification process to release the classified memo on alleged surveillance abuses spearheaded by Chairman Devin Nunes.
Rep. Mike Conaway, the Texas Republican leading the committee's Russia investigation, said Friday evening that the committee would consider using the rule — which he believed had never been invoked in the committee's 40-year history — in order to publicly release the memo that Republicans say details FBI abuses of a surveillance law known as FISA. And if the committee votes in favor of making the classified Nunes memo public, the rule states that it's then up to President Donald Trump to decide whether it should be released.
Republicans allege in the memo details FBI abuses related to FISA and the use of the opposition research dossier on Trump and Russia that was compiled by ex-British intelligence agent Christopher Steele, whose work with Fusion GPS was paid through Hillary Clinton's presidential campaign and the Democratic National Committee.
Nunes' memo concludes that the FISA judge who signed off on surveillance warrants for members of Trump's team during the campaign was not given full information about the dossier that was used in at least one application, according to sources familiar with the document. One source said the judge was not told that the document was paid for by the Democratic sources. CNN first reported last April that the dossier was used as part of the justification with the secret FISA court to monitor the communications of former Trump foreign policy adviser Carter Page. The New York Times first reported on the charges outlined in Nunes' memo.
A growing chorus of Republicans have called for Nunes' four-page memo to be made public after the Intelligence Committee voted Thursday to give all House members access to the classified document. Republicans in Congress, conservative media personalities, Donald Trump Jr., and civil liberties advocates like WikiLeaks have all called for Nunes' report to be put out publicly.
But Democrats say it's no more than Republican talking points that skew the underlying intelligence and is intended to undermine special counsel Robert Mueller's investigation into Trump's team and Russia.
Conaway said that the committee could act as early as the first week the House is back in session, once the panel's Republicans had a "good family conversation" with the broader conference about taking that step.
But there is disagreement within the Republican conference about not redacting the document first, with some Republicans expressing concerns about releasing sensitive intelligence information.
Conaway had a different view, however, saying the underlying intelligence that the memo was based on could not be released, but he was comfortable with publicizing the classified information Nunes cited. He didn't agree with King that sources and methods would be revealed.
"There's classified information in there, but there's not sources in methods. So I think it needs to be released," Conaway said.
But releasing the memo without the intelligence that it's based on is one of several issues raised by Democrats on the committee, who are still steaming over the abrupt vote the panel took Thursday to allow all House members to view Nunes' memo. The committee's nine Democrats issued a joint statement arguing that if the memo is released publicly, they won't be able to explain why it's inaccurate and flawed because the underlying intelligence will remain classified.
Nunes fought the FBI and Department of Justice for months over documents related to the FBI's use of the opposition research dossier on Trump and Russia, threatening contempt of Congress to top officials until he got the documents he was seeking.
While Republicans say the dossier was a politically motivated document, Fusion GPS co-founder Glenn Simpson has testified that Steele went to the FBI out of national security concerns and that no one had instructed him to do so.
Under the rule, the committee vote would trigger a five-day waiting period where the President has to notify the committee whether he objects to the disclosure of the information.
If the President does not object, the information would be released. But if the President does object, it would put the matter to the full House, which could potentially debate the matter in a closed session in the chamber before a public vote could override the President's objection.
Such a decision for the President could drive yet another wedge between Trump and the intelligence community, the FBI and the Justice Department, all of which almost surely would object to the release of information related to FISA warrants.
Trump has railed against the dossier and the Russia investigations, and claimed last year that he was wiretapped by the Obama administration. When Trump signed a FISA law renewing foreign surveillance measures on Friday, he noted the distinction.


Miley Cyrus attends the 2018 Vanity Fair Oscar Party following the 90th Academy Awards at The Wallis Annenberg Center for the Performing Arts in Beverly Hills, Calif.
A Jamaican musician filed a $300 million lawsuit against Miley Cyrus in New York on Tuesday (March 13) claiming that the singer's 2013 hit "We Can't Stop" too closely resembles the lyrics to a song he released more than 25 years ago. According to a Reuters report, Michael May (who performs as Flourgon), claims that "We Can't Stop" is similar to his 1988 hit "We Run Things," which he said has been a "favorite for lovers of reggae music worldwide" since it reached No. 1 in Jamaica.
The singer accused Miley and her label, RCA Records, of misappropriating his lyrics, which include "We run things/ Things no run we," which Cyrus sings as "We run things/ Things don't run we." Miley's song was co-written and produced by Mike Will Made-It, P-Nasty and Rock City, with Cyrus earning a songwriting credit as well; the song also credits Doug E. Fresh and Slick Rick due to a sample of their iconic 1985 hit "La Di Da Di."
A spokesperson for Cyrus could not be reached for comment at press time. May sought protection for his work last year with the U.S. Copyright Office and won "formal copyright protection" in November for all musical arrangements of "We Run Things." He claims that Cyrus' song "owes the basis of its chart-topping popularity to and its highly lucrative success to plaintiff May's protected, unique, creative and original content." May's complaint, filmed in U.S. District Court in Manhattan, requests a halt to all further sales and performances of "We Can't Stop," which peaked at No. 2 on the Billboard Hot 100 in August 2013.
Check out May and Cyrus' songs below.


Since cinnamon is not exactly prescribed by doctors ("Take two spoonfuls and call me in the morning"), dosage recommendations vary from ½ to 1 teaspoon, or slightly more. However, like seemingly everything in life, moderation is key (too much can prove toxic).
Aside from helping to ward off things such as certain cancers, viruses, and menstrual cramps, cinnamon has many under-the-radar health benefits. The spice, which has been around since 2000 BC in Ancient Egypt, helps treat everything from the common cold and infections to vomiting and erectile dysfunction.
What, exactly, is cinnamon? It's made from the inner bark of trees (Cinnamomum) and comes in two primary types: ceylon and cassia (the more popular one). Its pungent scent comes from the compound cinnamaldehyde. It is also rich in antioxidants (we could all use more of those, right?) — even more so than garlic or oregano.
Reduces blood pressure and the risk of heart disease.
Could help against Type 2 Diabetes (experts vary about this one).
Shows improvements regarding neurodegenerative diseases (like Parkinson's).
Its scent (from cinnamon sticks to chewing gum) helps brain function.
Good to alleviate sickness (like when you put it in tea with ginger).
It is best to keep your cinnamon in a dark, cool place and in a well-sealed glass container. The refrigerator is the best place to store it (in order to lengthen its life).
That way, you're bound to consume cinnamon in a fun way, not in an uncomfortable YouTube video-laden one.


text:
The Painter's Father
A prestigious provenance is no guarantee of authenticity – did Charles I receive an original by Dürer, or a copy?
Attributed to Albrecht Dürer, 1471–1528
'The Painter's Father', 1497
Oil on lime, 51 x 40.3 cm
In 1636 the city of Nuremberg presented Charles I with a pair of portraits by its most famous citizen, Albrecht Dürer: a self portrait and a portrait of the artist's father. The second work would appear to be the painting now in the National Gallery. Scientific examination, meticulous connoisseurship and a thorough study of historic documents have begun to piece together the story surrounding this picture.
Attributed to Albrecht Dürer, The Painter's Father, 1497
A royal provenance
In November 1636, Thomas Howard, Earl of Arundel, visited the German city of Nuremberg. A companion described their visit to the city hall, which featured a room "furnished with several rare pictures, including two by Albrecht Dürer of himself and his father which the City fathers presented to his Excellency [Arundel]" as a present to King Charles I. The portraits entered the royal collection, but were sold following the execution of Charles I in 1649. The self portrait subsequently entered the Spanish royal collection (and is now in the Museo Nacional del Prado, Madrid), but the fate of the portrait of Dürer's father is more obscure.
Albrecht Dürer, 'Self Portrait', 1498
© The Art Archive / Museo Nacional del Prado, Madrid
The Painter's Father came to the National Gallery in 1904 with little information about its earlier history. However, a thorough examination of the painting uncovered a possible clue. On the back of the wood panel support is a fragment of an old paper label, inscribed in what appears to be a 17th-century hand. The inscription on a similar label on the back of the Prado self portrait (perhaps in the same hand) makes it clear that the Prado painting, at least, had once belonged to Charles I.
The Gallery's portrait precisely matches a description of the likeness of Dürer's father in the royal collection, as listed in a 1639 inventory. The sitter is there described as having a black cap, and "a dark yellow gown wherein his hands are hidden in the wide sleeves painted upon a reddish ground all crack't". Although other versions of the portrait are known, none have the same reddish background as the one in the National Gallery. The fact that the portrait is explicitly described as being 'crack't' is also relevant. Most of the surface of 'The Painter's Father' – and especially the background – is affected by broad, disfiguring cracks (now covered by modern retouching) that occurred as the paint dried.
Weighing the attribution
Detail, from attributed to Albrecht Dürer, 'The Painter's Father', 1497
Although the National Gallery painting is considered the best of four known versions of 'The Painter's Father', its quality and technique are not consistent with authentic works by Dürer. The streaky, pinkish-red background is unlike that in any other work by the artist. It was painted using madder, a red lake pigment that has faded over time, accentuating the streaky effect. Nor are the pronounced drying cracks seen in any other work by Dürer, whose meticulous application of successive layers of paint resulted in a flawlessly smooth surface. In contrast, the artist of the Gallery painting appears to have applied his paint quickly, in a single, relatively thick layer, which probably accounts for the extensive cracking.
Detail from Albrecht Dürer, 'Self Portrait', 1498
© The Art Archive / Museo Nacional del Prado, Madrid / Gianni Dagli Orti
A detailed comparison with paintings indisputably by Dürer – such as the self portrait in the Prado – makes it clear that the artist of the Gallery's version lacks Dürer's sophisticated and highly realistic approach to the modelling of form. The Gallery's painting is likely to be a copy after a lost original by Dürer, probably made in the second half of the 16th century.
Value and significance
But if the Gallery's painting can plausibly be identified with the painting given to Charles I by the city of Nuremberg, how could it be a copy? Admiration for Dürer's work was such that copies were made of his paintings even during his lifetime, including some by the artist himself or made under his supervision. Production of copies, and their distribution, continued as his fame grew, well after his death. In 1636 the city fathers of Nuremberg may not have known, or cared, that one of the paintings they gave to the English king was a copy. It remained a valuable symbol of the achievements of one of their most illustrious citizens.
Marjorie E. Wieseman is Curator of Dutch paintings at National Gallery. This material was published on 30 June 2010 to coincide with the exhibition Close Examination: Fakes, Mistakes and Discoveries
S. Foister, 'Dürer's Nuremberg Legacy: The case of the National Gallery portrait of Dürer's father', a paper given at the conference 'Albrecht Dürer and his Legacy', British Museum, London, 21 March 2003. British Museum Occasional Paper 130 (PDF 301k)
After Albrecht Dürer
Close Examination: Fakes, Mistakes and Discoveries
Sainsbury Wing Exhibition: 30 June – 12 September 2010
Read more case studies from the Gallery
Close Examination
Revealing the stories behind the paintings

redpajama_set_name: RedPajamaCommonCrawl


'He has made everything beautiful in its time' (Ecclesiastes 3:11) Marvel at God's creation as we travel to beautiful places and gaze at the sunset through a fiery floral fiesta (flower arranging). Financial Gift Night. 7:45pm.


text:
Euphaedra ombrophila is a butterfly in the family Nymphalidae. It is found in the northern part of the Republic of the Congo.

References

Butterflies described in 1981
ombrophila
Endemic fauna of the Republic of the Congo
Butterflies of Africa

redpajama_set_name: RedPajamaWikipedia


Beatrice Fihn, Executive Director of ICAN gives her acceptance speech at in Oslo, Norway December 10, 2017.
The latest recipient of the Nobel Peace Prize warns of the growing tension between North Korea and the United States.
Yesterday Beatrice Fihn, executive director of the International Campaign to Abolish Nuclear Weapons (ICAN), was awarded the renowned Nobel Peace Prize.
Fihn used her acceptance speech to address the escalating aggression between the United States and North Korea, warning that a "bruised ego" could lead to a global "nuclear crisis", BBC reports.
The constant sparring between US leader Donald Trump and North Korean leader Kim Jong-un has become increasingly personal, with Trump calling Jong-un names like "little rocket man." Just last month, North Korea tested its most advanced missile, capable of reaching the entire continental United States.


text:
<?php

	/* @var $this NewsController 	*/
	/* @var $model NewsCreateForm 	*/
	/* @var $topicdata string[] 	*/
	/* @var $tagdata string[] 		*/

$this->renderPartial('_form', array('model' => $model, 'topicdata' => $topicdata, 'tagdata' => $tagdata));

redpajama_set_name: RedPajamaGithub


text:
Draft guidance on China investment ban spurs tensions in Trump administration -sources
By Alexandra Alper
FILE PHOTO: Flags of U.S. and China are displayed at AICC's booth during China International Fair for Trade in Services in Beijing
WASHINGTON (Reuters) -A debate is raging within the Trump administration over guidance the Treasury Department is seeking to publish to clarify a recent directive banning U.S. investors from buying shares of some top Chinese companies, people familiar with the matter said.
The State Department and the Department of Defense (DOD) are pushing back against the content of a "frequently asked questions" release that the Treasury Department has prepared to spell out the fine print of the White House's November order, which has stirred anxiety on Wall Street, the two people said.
One of the people familiar with the matter said that tensions between the agencies stem from the view that the Treasury is seeking to water down the executive order, in part by excluding subsidiaries from the ban. But a third source, a U.S. official, said "the Treasury Department's guidance will be in line with the overall intent of the (executive order)."
The Defense Department and the Treasury did not immediately respond to requests for comment. A State Department spokesperson said the agency doesn't comment on interagency deliberations.
Still, the debate highlights longstanding tensions between U.S. government agencies over policy toward China, with many national security-minded officials taking a tougher line than those seeking closer economic ties.
Starting in November 2021, the directive bars U.S. investors from buying securities of Chinese companies that the Pentagon has designated as owned or controlled by the Chinese military.
So far, the Pentagon has added 35 companies, including oil giant CNOOC and China's top chipmaker SMIC, to the blacklist, which was mandated by a 1999 law that the Defense Department did not comply with until this year.
Index providers have already begun shedding some of the designated companies from their indexes. However, questions remain over whether subsidiaries of the blacklisted companies will also be subject to the restrictions.
Kevin Wolf, a trade lawyer at Akin Gump in Washington, said the scope of the Chinese companies covered by the order was a key unanswered question. "Are they going to go the road of what was listed or are they going to go the road of a traditional sanction and also apply it to affiliates?" he asked.
It was not immediately clear when the guidance would be published, nor prospects for the outcome of the debate. Democratic President-Elect Joe Biden, who takes office on Jan. 20, could take a different approach to the directive or even revoke it.
The Biden transition team has declined to comment on his plans regarding the order.
(Reporting by Alexandra Alper; additional reporting by Humeyra Pamuk and Idrees Ali; editing by Richard Pullin)
Brazil's Bolsonaro to allow China's Huawei in 5G auctions: newspaper


text:
Moving From Pueblo to Welby
Pueblo, CO - Welby, CO
(128 miles)
Pueblo Movers
Welby Movers
Here are some cost estimates for moving from Pueblo to Welby (128 miles) depending on the size of your home:
2 $840 - $1020
How much does it cost to move from Pueblo, Colorado to Welby, Colorado? The distance is 128 miles, so most of the moving expense will be in the labor to load and unload your belongings.
For example, a studio apartment costs $370 to $450, a one bedroom apartments costs $590 to $720, a two bedroom costs $840 to $1020, a three bedroom costs $1110 to $1360, a four bedroom house costs $1410 to $1720, a five bedroom house costs $1740 to $2120, and anything larger would cost even more.
Top Rated Pueblo Movers
All American Movers
1916 W 20th St, Pueblo, CO 81003
4029 Club Manor Dr, Pueblo, CO 81008
Colorado Moving & Storage
3001 N Freeway Rd, Pueblo, CO 81008
Top Rated Welby Movers
Light Speed Delivery
4400 Wynkoop St, Denver, CO 80216
Baileys Moving and Storage
11755 E Peakview Ave, Englewood, CO 80111
Fischer Van Lines
1301 E 58th Ave, Denver, CO 80216


Can you imagine being able to grow fruit or vegetables out of the end of your pencil? Well, thanks to Treewise pencils it's possible!
Treewise firmly believe in conserving the environment and in the production of recyclable products. As deforestation continues to soar and have a major negative impact upon the environment, killing trees for pencils is something than can be prevented. Treewise are dedicated to saving trees one pencil at a time but need the help of humanity to jump onboard with the movement.
To make wooden pencils, forests the size of 90 tennis courts are cut down every minute to supply wood.
Many pencil manufactures use wood taken from the rain forest.
Deforestation is a major cause of many negative environmental changes.
Recycling 12.5 feet stack of newspapers saves a 20-foot pine tree.
So what makes Treewise special?
The time to begin protecting our environment is now. Teaching younger generations how they can be eco-friendly at an early age will soon become second nature to them. If there is a better way to sustain life, then those ideas and products need to be globally recognised. Treewise pencils are affordable and benefit both you and our planet.
The icing on the cake, Treewise also produce pencils that allows you to grow plants or vegetables after the writing portion of the pencil is worn-down. If the 100% recycled pencil was not already impressive enough, you can now place the eraser side of the pencil into a pot of soil and watch your plant grow. You can choose a pencil that grows chilies, coriander, fenugreek, mustard, tomatoes and more. Plantable pencils are a great example of how we can reuse the earth's resources.
Protecting our planet can be turned into a fun activity for our children. Be wise like Treewise and support recyclable and reusable products that will help make a difference to our environment.


The Treehouse level 32 (4-32) Free Them All : the solution to have 3 stars!
The Treehouse level 31 (4-31) Safe Landing : the solution to have 3 stars!
The Treehouse level 30 (4-30) Oil Pipes : the solution to have 3 stars!
The Treehouse level 29 (4-29) Storm The Castle : the solution to have 3 stars!
The Treehouse level 28 (4-28) Valet Parking : the solution to have 3 stars!
The Treehouse level 27 (4-27) Underworld : the solution to have 3 stars!
The Treehouse level 26 (4-26) The Ride Home : the solution to have 3 stars!
The Treehouse level 24 (4-24) Pinball Machine : the solution to have 3 stars!
The Treehouse level 23 (4-23) Mrs. Doll I Presume : the solution to have 3 stars!


text:
'use strict';
myApp.controller('contactsController', ['$scope', '$http', 'config', 'localStorageService', '$cordovaContacts', '$cordovaCamera',
    function ($scope, $http, config, localStorageService, $cordovaContacts, $cordovaCamera) {
        var serviceBase = config.serviceBase;
        $scope.datacontacts = {};
        var user = localStorageService.get('authorizationData');

        $scope.savecontacts = function () {
            alert(JSON.stringify($scope.datacontacts))
            if (!$scope.contactsData) {
                $http.post(serviceBase + 'api/contacts', $scope.datacontacts).success(function (response) {
                    $scope.contactsData = response;
                    console.log(JSON.stringify($scope.contactsData));
                    alert($scope.contactsData);
                    alert("Save complete");
                }).error(function (err) {
                    // alert();
                    alert('save failed : ' + JSON.stringify(err));
                })
            } else {
                $http.put(serviceBase + 'api/contacts' + $scope.contactsData._id, datacontacts).success(function (response) {
                    $scope.contactsData = response;
                    alert($scope.contactsData);
                    console.log(JSON.stringify($scope.contactsData));
                    alert("Save complete");
                }).error(function (err) {
                    // alert();
                    alert('save failed : ' + JSON.stringify(err));
                })
            }

        }

        $scope.getContactList = function () {
            $cordovaContacts.find({ filter: '' }).then(function (result) {
                $scope.contacts = result;
                // prompt(JSON.stringify(result))
                // prompt('copy token', JSON.stringify($scope.contacts));
            }, function (error) {
                console.log("ERROR: " + error);
            });
        }
        $scope.createContact = function () {
            $cordovaContacts.save({ "displayName": "Steve Jobs" }).then(function (result) {
                console.log(JSON.stringify(result));
            }, function (error) {
                console.log(error);
            });
        }

        $scope.removeContact = function () {
            $cordovaContacts.remove({ "displayName": "Steve Jobs" }).then(function (result) {
                console.log(JSON.stringify(result));
            }, function (error) {
                console.log(error);
            });
        }
        $scope.takePicture = function () {
            var options = {
                quality: 75,
                destinationType: Camera.DestinationType.DATA_URL,
                sourceType: Camera.PictureSourceType.CAMERA,
                allowEdit: true,
                encodingType: Camera.EncodingType.JPEG,
                targetWidth: 300,
                targetHeight: 300,
                popoverOptions: CameraPopoverOptions,
                saveToPhotoAlbum: true
            };

            $cordovaCamera.getPicture(options).then(function (imageData) {
                $scope.imgURI = "data:image/jpeg;base64," + imageData;
            }, function (err) {
                // An error occured. Show a message to the user
            });
        }

    }])


1. Hacer clic Jugar botón para Jugar Sunflower Spider Man Into the Spider Verse Post Malone Swae Lee .
2. Hacer clic Descargar botón para Descargar Sunflower Spider Man Into the Spider Verse Post Malone Swae Lee.mp3 & seleccionar Bitrate as 320 Kbps, 256 Kbps, 192 Kbps, 128 Kbps.


Frameless shower screens are a spectacular addition to any bathroom in Jindalee, offering that modern-day touch of elegance you're trying to find. Chic, stylish and contemporary, our glass shower features can change a normal area into pure functional elegance. Diligently crafted in our warehouse, our products bring a slice of luxury to any restoration.
You are bound to discover the best function to mix with your decoration and raise your showering experience to a whole new level of convenience. Popular frameless shower screen designs in Jindalee consist of corner alternatives, fixed partitions, over bath, wall to wall, U-shaped or rectangular and lots of others.
Our warehouse also provides a large range of structural choices for you to pick from, including corner splay diamond, single panel walk in partition, corner square, and even moving doors.
We understand that it's not possible to appeal to each individual palate, which is why we provide our customers the option to produce custom shower screens from our warehouse. If you have a particular design or a difficult space to work with, our team can assist you complete your bathroom to your requirements. Just go to our site and fill in a request for a quote.
No have to worry about costly and extensive bathroom restorations anymore – we can offer you a cost effective, streamlined and stylish appearance that makes certain to create a space you can be proud of. Thanks to our customized shower screens, you can guarantee that we have an option to match you.
With charming workmanship and top-notch materials, our custom and pre-made products make effective use of a little bathroom's restricted space. The glass panels give the illusion of space and light, therefore making your bathroom appear bigger and more welcoming. The addition of classy glass racks is a beautiful however functional feature that declutters your shower recess. Furthermore, frameless showers are the more hygienic and safe choice for your household: the absence of unneeded frames means that dirt, grime and germs have no space to occupy, while the containment of water within the enclosure considerably reduces the danger of slipping on damp flooring tiles.
The Frameless Shower Screen is the peak of luxury and stylish design in Jindalee. Available also as a panel or above bath swing, our special frameless screens will bring the finishing touch to any modern bathroom. Our fittings are quality chrome plated brass and are readily available in Chrome, Satin (Matt) and Gold finish. We provide Bevelled, Flat and round hinges and wall brackets. We provide an option of over 15 knobs and handles. We believe our hardware choices will satisfy all your requirements for compatibility with existing taps and vanities.
These screens provide you the most financial choice for your shower recess. Offered in pivot or sliding doors we use 6.38 laminated safety glass or 6mm toughened glass. All panels and doors are completely enclosed by aluminium. Unlike the frameless or streamline options there is an aluminium column where the side panel meets the front of the screen. Pivot doors only open outwards not both methods like the frameless or streamline options. Sliding doors are offered in 2 or 3 doors. As these screens have an overlap where the door meets the infill they are typically more water tight than other screen choices. Also readily available as a panel or above bath. Every screen is custom made for your shower recess. There are 7 options of colour for anodised or powder coated aluminium frames. These screens use handles rather than knobs to open and close.
Our ever popular semi frameless shower screen provides 6mm toughened glass, clear or frosted. Whether you select sliding or pivot doors there is only metal on the top and bottom of the door. Pivot doors only open in the outside direction. Unlike the frameless or streamline alternatives there is an aluminium column where the side panel meets the front of the screen, using higher stability. As these screens have an overlap where the door meets the infill they are usually more water tight than other screen options. Also available as a panel or above bath. Every screen is custom made for your shower recess. There are 7 options of colour for anodised or powder layered aluminium frames. We provide a choice of over 15 knobs and handles.
Whether you would like a screen noticeably custom designed to fit your unique area or a simple stock-standard option, our warehouse has the materials to style a classy frameless feature for your shower. Contact our friendly team of experienced staff today to learn how you can achieve the bathroom of your dreams.


text:
ALERT Coronavirus COVID-19 Updates Read on...
Rich History, Bright Future
All categories Accounting and Finance Support (DWSU) Addressing and Road Naming Ambulance Billing CMS Emergency Preparedness Rule County Roads Development Review Elections Emergency Management Family Partnership Geographic Information Systems (GIS) Housing Human Resources Landfill & Recycling Life Safety Office of the Fire Marshals Permits & Inspections Permitting & Development Review Procurement & Contracting Regulatory Compliance (DWSU) Scott Key Center - How Does it all work? Business FAQs Senior Services Division Accessible Homes for Seniors Senior Services Guardianship Severe Weather Frequently Asked Questions Signs and Traffic Signals TransIT Treasury Utilities & Solid Waste Management (DWSU) Wastewater Treatment and Disposal (DWSU) Water & Wastewater Maintenance (DWSU)
Accounting and Finance Support (DWSU)
Addressing and Road Naming
Ambulance Billing
CMS Emergency Preparedness Rule
Family Partnership
Landfill & Recycling
Office of the Fire Marshals
Permitting & Development Review
Regulatory Compliance (DWSU)
Scott Key Center - How Does it all work? Business FAQs
Senior Services Division Accessible Homes for Seniors
Senior Services Guardianship
Severe Weather Frequently Asked Questions
Signs and Traffic Signals
Utilities & Solid Waste Management (DWSU)
Wastewater Treatment and Disposal (DWSU)
Water & Wastewater Maintenance (DWSU)
Where does wastewater come from?
Wastewater comes from our homes in the form of human and household wastes from toilets, baths and drains as well as from industries, schools and businesses in the form of wastes from factories, food service operations, shopping centers, etc. On average, each person in the US contributes approximately 100 gallons of wastewater daily.
1. Where does wastewater come from?
2. What does a wastewater treatment plant do?
Treatment plants remove impurities contained in wastewater so that the treated wastewater can be safely returned to the environment. The same stabilization occurs in nature, to break down wastewater to its most basic components of carbon dioxide and water, if given enough time. Due to the increase in the earth's population and the volume of wastewater generated, the natural process would be overwhelmed. A wastewater treatment plant speeds up the process. The cleaned water is disinfected and returned to local rivers and creeks.
3. How is the treated wastewater disinfected?
All of the wastewater treatment plants operated by the Frederick County Division of Water and Sewer Utilities use Ultraviolet light to disinfect the wastewater discharge (effluent).
4. Who operates the wastewater treatment plants?
The daily treatment plant operation is conducted by highly trained and state certified wastewater operators. Wastewater operators are required to obtain and maintain state certification. In order to become certified, the operator must be a trainee for 3 years and pass the state certification exam and attend a minimum of 30 to 46 CEUs of approved certification training, every three years to maintain their certification. In addition to operations staff, a team of maintenance personnel are required to maintain the equipment at the treatment plant as well as over 380 miles of sewer line and 33 pump stations that are part of the wastewater collection system.
5. How many wastewater treatment plants are in the County?
The Division of Water and Sewer Utilities currently operates 10 wastewater treatment plants (WWTPs).
6. What size are these wastewater treatment plants?
The plants operated by the Division of Water and Sewer Utilities range in size from 5,000 gallons per day to 15 million gallons per day (MGD).
The Ballenger-McKinney Wastewater Treatment Plant is the County's largest and most sophisticated treatment plant. It was recently upgraded to provide Enhanced Nutrient Removal (ENR) treatment to remove Nitrogen and Phosphorus and uses membrane technology to produce high quality effluent. It has a permitted capacity of 15.0 MGD and is manned by certified operators 24 hours/day, 365 days per year.
7. What are some of the things that should not be put down the drain or toilet?
Any products that are labeled as hazardous materials should never be disposed of in the sewer. Hazardous materials are often labeled as corrosive, toxic, reactive or flammable. The list includes many items we have in our homes such as all-purpose cleaners, antifreeze, paint, paint thinner, pool chemicals, solvents and motor oil to name a few.
Many of the paper products labeled "flushable" should not be disposed of in the sewer. For example, "disposable wipes" do not breakdown in the sewer and cause clogs in the sewers and pumps.
Animal and vegetable derived cooking oils and grease can block drains and sewer lines.
8. What should I do with fat and oil if it can't go down the drain?
Homeowners can collect grease in a metal can and, once it cools, place it in the trash. Restaurants and other commercial food preparation activities that generate a large quantity of fat and oil are required to have grease traps installed and have them pumped regularly to keep grease from entering the sewer.
Welcome to Frederick County!
Visit Frederick
State's Att. Witness Update
FCG TV
Frederick County Government
12 E. Church St.
Citizens Services
Highway Operations
Planning & Permitting
Contact Us - County Staff Directory
Website User Policies, Terms & Conditions


No reviews for Finder No Muko [CD+DVD Limited Edition] yet.
Shiori Niiyama releases a new title / album.
the price for Finder No Muko [CD+DVD Limited Edition] drops.
there are new images or links available for Finder No Muko [CD+DVD Limited Edition].


1. Jurisdiction- Where should you file?
The first aspect of filing a divorce is knowing where to file. If you or your spouse live in Hudson County for six months or more, you need to file in Hudson County. As long as one of you reside in Hudson County, you can file here. The court is located at 595 Newark Avenue in Jersey City, NJ.
While you may be the victim, if you will of adultery, extreme cruelty or other reason you are seeking to file for divorce, the cause of action used most often for divorce in Hudson County and throughout New Jersey is: irreconcilable differences. This cause of action is the easiest to prove and you do not have to get into any details as to why you are getting a divorce. Essentially irreconcilable differences are the "cleanest way" to obtain a divorce in New Jersey. Many people opt to use this cause of action but again you do not have to. Adultery and extreme cruelty are other causes of action that are used in the New Jersey Family Court.
If you have children, your divorce papers should have their information on the divorce papers such as their names and dates of birth. The children's' social security number, along with your own is required but is confidential. This confidential information needs to be provided on the Confidential Litigants Information Sheet.
4. What relief are you seeking from the court?
When you file for divorce, aside from ending the marriage, you can seek other relief such as Child Custody, Child Support, Alimony, Equitable Distribution (Division of Assets) and other family law related relief.
Above are the basics for a divorce in New Jersey. While the terms are basic, many of these issues can become very complex and these issues require extensive litigation at times. So whether you both agree that you want a divorce or not, the hardest part for the courts in deciding these issues. Many people call my office and say "This is an easy case, we agree that we want a divorce." The only time a case can be considered "easy" is if all issues between you and your spouse are agreed on. If all issues are not agreed on, your attorney, the attorneys through negotiation, and/or the Judge can decide how those issues will be dealt with.
Can or Should I consider Mediation for my Divorce?
You can always call my office or any other experienced attorney that is skilled in negotiation and that is in fact patient, to help two parties willing to have an open mind and resolve their cases through an experienced divorce mediator such as Santo V. Artusa, Jr., Esq that has an uncanny ability to get to the root cause of why the divorce is not settling and helping individuals reach an agreement that may not be perfect for either side but an agreement that both sides provided input and both parties can live with. If you cannot reach an agreement, the divorce coourt Judges in Hudson County: Judge Rodriguez, Judge Vanek, Judge Schillari-Rich and Judge Maureen Mantineo will decide your case, which may or may not hurt you. Judges may make a decision that is completly different than what you expected. Be Careful going to trial.
Getting a divorce is similar to filing for bankruptcy, it gives you a fresh start. In order to have a fresh start, you need someone to guide and protect you so that you do indeed obtain a judgment of divorce and that you do have a fresh start. As an experienced divorce attorney in New Jersey, my team and I can help you in our Jersey City Headquarters today. Call us on 973-337-9643 for an appointment.


Cape Ann Museum Renovations - Windover Construction, Inc.
Founded in 1873, the Cape Ann Museum is home to world-class art and artifact collections that reflect the rich history of the region. Having gone decades without any significant upgrades to their gallery spaces, it was time for the museum to explore the possibility of renovations as a means to improve visitor experience and to better convey the story of its collections.
That is when the museum turned to Windover to help achieve their desired construction objectives. Among many, these included a clearer visitor reception and entry, improved internal environment, enhanced lighting, reconfiguration of 13 galleries, better security, and new finishes throughout including flooring, ceilings, and museum quality walls. Significant mechanical, electrical, and plumbing upgrades behind the walls were required in order to introduce the new systems and gallery layouts. Working with the museum and design team, we facilitated a process that balanced renovation priorities with available capital funds. In addition to hitting the museum's primary objectives for the project, this careful management of budget also allowed scope to be added late in design. This included the incorporation of a special gallery to house an 1860's first-order Fresnel Lens which has become an important mainstay for the museum.


text:
using namespace libbruce;

TEST_CASE("writing a new single leaf tree")
{
    be::mem mem(1024);
    tree_impl tree(mem, maybe_nodeid(), g_testPool, intToIntTree);
    tree.insert(one_r, two_r);

    mutation mut = tree.write();

    // Check that we wrote a page to storage, and that that page deserializes
    REQUIRE( mut.success() );
    REQUIRE( mut.createdIDs().size() == 1 );

    THEN("it can be deserialized to a leaf")
    {
        mempage page = mem.get(mut.createdIDs()[0]);
        leafnode_ptr r = boost::dynamic_pointer_cast<LeafNode>(ParseNode(page, intToIntTree));

        REQUIRE(r->pairCount() == 1);
        REQUIRE(rngcmp(r->get_at(0)->first, one_r) == 0);
        REQUIRE(rngcmp(r->get_at(0)->second, two_r) == 0);
    }

    WHEN("a new key is added to it")
    {
        tree_impl tree2(mem, mut.newRootID(), g_testPool, intToIntTree);
        tree2.insert(two_r, one_r);

        mutation mut2 = tree2.write();

        THEN("it can still be deserialized")
        {
            mempage page = mem.get(*mut2.newRootID());
            leafnode_ptr r = boost::dynamic_pointer_cast<LeafNode>(ParseNode(page, intToIntTree));

            REQUIRE(r->pairCount() == 2);
            REQUIRE(rngcmp(r->get_at(0)->first, one_r) == 0);
            REQUIRE(rngcmp(r->get_at(0)->second, two_r) == 0);
            REQUIRE(rngcmp(r->get_at(1)->first, two_r) == 0);
            REQUIRE(rngcmp(r->get_at(1)->second, one_r) == 0);
        }
    }
}

TEST_CASE("inserting a lot of keys leads to split nodes")
{
    be::mem mem(1024);
    tree_impl tree(mem, maybe_nodeid(), g_testPool, intToIntTree);

    for (uint32_t i = 0; i < 140; i++)
        tree.insert(intCopy(i), intCopy(i));

    mutation mut = tree.write();

    REQUIRE( mem.blockCount() == 3 );

    mempage rootPage = mem.get(*mut.newRootID());
    internalnode_ptr rootNode = boost::dynamic_pointer_cast<InternalNode>(ParseNode(rootPage, intToIntTree));

    REQUIRE( rootNode->branchCount() == 2 );
    REQUIRE( rootNode->itemCount() == 140 );

    mempage leftPage = mem.get(rootNode->branch(0).nodeID);
    leafnode_ptr leftNode = boost::dynamic_pointer_cast<LeafNode>(ParseNode(leftPage, intToIntTree));
    REQUIRE( leftNode->pairCount() == rootNode->branch(0).itemCount );

    mempage rightPage = mem.get(rootNode->branch(1).nodeID);
    leafnode_ptr rightNode = boost::dynamic_pointer_cast<LeafNode>(ParseNode(rightPage, intToIntTree));
    REQUIRE( rightNode->pairCount() == rootNode->branch(1).itemCount );

    REQUIRE( leftNode->itemCount() + rightNode->itemCount() == rootNode->itemCount() );
}

TEST_CASE("split is kosher")
{
    be::mem mem(1024);
    tree_impl tree(mem, maybe_nodeid(), g_testPool, intToIntTree);

    for (uint32_t i = 0; i < 128; i++)
        tree.insert(intCopy(i), intCopy(i));

    mutation mut = tree.write();

    mempage rootPage = mem.get(*mut.newRootID());
    internalnode_ptr rootNode = boost::dynamic_pointer_cast<InternalNode>(ParseNode(rootPage, intToIntTree));

    REQUIRE( rootNode->branchCount() == 2 );
    memslice splitKey = rootNode->branch(1).minKey;

    mempage leftPage = mem.get(rootNode->branch(0).nodeID);
    mempage rightPage = mem.get(rootNode->branch(1).nodeID);
    leafnode_ptr leftNode = boost::dynamic_pointer_cast<LeafNode>(ParseNode(leftPage, intToIntTree));
    leafnode_ptr rightNode = boost::dynamic_pointer_cast<LeafNode>(ParseNode(rightPage, intToIntTree));

    for (int i = 0; i < leftNode->pairCount(); i++)
    {
        REQUIRE( intCompare(leftNode->get_at(i)->first, splitKey) < 0 );
        if (i > 0)
            REQUIRE( intCompare(leftNode->get_at(i-1)->first, leftNode->get_at(i)->first) <= 0 );
    }

    for (int i = 0; i < rightNode->pairCount(); i++)
    {
        REQUIRE( intCompare(rightNode->get_at(i)->first, splitKey) >= 0 );
    }
}

TEST_CASE("inserting then deleting from a leaf")
{
    be::mem mem(1024);
    tree_impl tree(mem, maybe_nodeid(), g_testPool, intToIntTree);
    tree.insert(one_r, two_r);
    tree.remove(one_r, true);
    mutation mut = tree.write();

    THEN("it can be deserialized to an empty leaf")
    {
        mempage page = mem.get(*mut.newRootID());
        leafnode_ptr r = boost::dynamic_pointer_cast<LeafNode>(ParseNode(page, intToIntTree));

        REQUIRE(r->pairCount() == 0);
    }
}

TEST_CASE("inserting then deleting from an internal node")
{
    be::mem mem(1024);
    tree_impl tree(mem, maybe_nodeid(), g_testPool, intToIntTree);
    for (uint32_t i = 0; i < 128; i++)
        tree.insert(intCopy(i), intCopy(i));

    SECTION("deleting from the left")
    {
        uint32_t x = 40;
        tree.remove(memslice(&x, sizeof(x)), true);
        mutation mut = tree.write();

        mempage rootPage = mem.get(*mut.newRootID());
        internalnode_ptr rootNode = boost::dynamic_pointer_cast<InternalNode>(ParseNode(rootPage, intToIntTree));
        REQUIRE( rootNode->itemCount() == 127 );
    }

    SECTION("deleting from the right")
    {
        uint32_t x = 80;
        tree.remove(memslice(&x, sizeof(x)), true);
        mutation mut = tree.write();

        mempage rootPage = mem.get(*mut.newRootID());
        internalnode_ptr rootNode = boost::dynamic_pointer_cast<InternalNode>(ParseNode(rootPage, intToIntTree));
        REQUIRE( rootNode->itemCount() == 127 );
    }
}

TEST_CASE("inserting a bunch of values with the same key and selective removal works")
{
    be::mem mem(1024);
    tree_impl tree(mem, maybe_nodeid(), g_testPool, intToIntTree);
    for (uint32_t i = 0; i < 128; i++)
        tree.insert(two_r, intCopy(i));

    SECTION("deleting a low key & value")
    {
        tree.remove(two_r, intCopy(40), true);
        mutation mut = tree.write();

        mempage rootPage = mem.get(*mut.newRootID());
        leafnode_ptr rootNode = boost::dynamic_pointer_cast<LeafNode>(ParseNode(rootPage, intToIntTree));
        REQUIRE( rootNode->itemCount() == 127 );
    }

    SECTION("deleting a high key & value")
    {
        tree.remove(two_r, intCopy(80), true);
        mutation mut = tree.write();

        mempage rootPage = mem.get(*mut.newRootID());
        leafnode_ptr rootNode = boost::dynamic_pointer_cast<LeafNode>(ParseNode(rootPage, intToIntTree));
        REQUIRE( rootNode->itemCount() == 127 );
    }

    SECTION("deleting a nonexistent value")
    {
        tree.remove(two_r, intCopy(130), false);
        mutation mut = tree.write();

        mempage rootPage = mem.get(*mut.newRootID());
        leafnode_ptr rootNode = boost::dynamic_pointer_cast<LeafNode>(ParseNode(rootPage, intToIntTree));
        REQUIRE( rootNode->itemCount() == 128 );
    }
}

TEST_CASE("write new pages, delete old ones")
{
    maybe_nodeid treeID;
    be::mem mem(1024);
    {
        tree_impl tree(mem, maybe_nodeid(), g_testPool, intToIntTree);
        for (uint32_t i = 0; i < 128; i++)
            tree.insert(intCopy(i), intCopy(i));
        mutation mut = tree.write();
        REQUIRE( mem.blockCount() == 3 );
        treeID = mut.newRootID();
    }

    {
        tree_impl tree(mem, treeID, g_testPool, intToIntTree);
        tree.insert(intCopy(140), intCopy(140));
        mutation mut = tree.write();
        REQUIRE( mem.blockCount() == 5 );
        REQUIRE( mut.createdIDs().size() == 2 );
        REQUIRE( mut.obsoleteIDs().size() == 2 );
    }
}

TEST_CASE("postfix a whole bunch of the same keys into anode")
{
    be::mem mem(1024);
    tree_impl tree(mem, maybe_nodeid(), g_testPool, intToIntTree);
    for (unsigned i = 0; i < 50; i++)
        tree.insert(intCopy(i), intCopy(i));
    for (unsigned i = 50; i < 400; i++)
        tree.insert(intCopy(50), intCopy(i));
    mutation mut = tree.write();

    REQUIRE( mem.blockCount() == 3 ); // Expecting leaf and two overflows
}

TEST_CASE("int to int tree")
{
    be::mem mem(1024);
    tree<uint32_t, uint32_t> t(maybe_nodeid(), mem);

    t.insert(1, 1);
    t.insert(2, 2);
    mutation mut = t.write();

    mempage page = mem.get(*mut.newRootID());
    leafnode_ptr node = boost::dynamic_pointer_cast<LeafNode>(ParseNode(page, intToIntTree));

    REQUIRE( traits::convert<uint32_t>::from_bytes(node->get_at(0)->first) == 1 );
    REQUIRE( traits::convert<uint32_t>::from_bytes(node->get_at(0)->second) == 1 );
    REQUIRE( traits::convert<uint32_t>::from_bytes(node->get_at(1)->first) == 2 );
    REQUIRE( traits::convert<uint32_t>::from_bytes(node->get_at(1)->second) == 2 );
}

TEST_CASE("string to int tree")
{
    be::mem mem(1024);
    tree<std::string, uint32_t> t(maybe_nodeid(), mem);

    t.insert("one", 1);
    t.insert("two", 2);
    mutation mut = t.write();

    mempage page = mem.get(*mut.newRootID());
    leafnode_ptr node = boost::dynamic_pointer_cast<LeafNode>(ParseNode(page, tree<std::string, uint32_t>::fns));

    REQUIRE( traits::convert<std::string>::from_bytes(node->get_at(0)->first) == "one" );
    REQUIRE( traits::convert<uint32_t>::from_bytes(node->get_at(0)->second) == 1 );
    REQUIRE( traits::convert<std::string>::from_bytes(node->get_at(1)->first) == "two" );
    REQUIRE( traits::convert<uint32_t>::from_bytes(node->get_at(1)->second) == 2 );
}

TEST_CASE("in to string tree")
{
    be::mem mem(1024);
    tree<uint32_t, std::string> t(maybe_nodeid(), mem);

    t.insert(1, "one is one");
    t.insert(2, "two is two");
    mutation mut = t.write();

    mempage page = mem.get(*mut.newRootID());
    leafnode_ptr node = boost::dynamic_pointer_cast<LeafNode>(ParseNode(page, tree<uint32_t, std::string>::fns));

    REQUIRE( traits::convert<uint32_t>::from_bytes(node->get_at(0)->first) == 1 );
    REQUIRE( traits::convert<std::string>::from_bytes(node->get_at(0)->second) == "one is one" );
    REQUIRE( traits::convert<uint32_t>::from_bytes(node->get_at(1)->first) == 2 );
    REQUIRE( traits::convert<std::string>::from_bytes(node->get_at(1)->second) == "two is two" );
}

TEST_CASE("binary to string tree")
{
    be::mem mem(1024);
    tree<std::string, binary> t(maybe_nodeid(), mem);

    t.insert("one", binary("\x01\x00\x01", 3));
    t.insert("two", binary("\x02\x00\x02", 3));
    mutation mut = t.write();

    mempage page = mem.get(*mut.newRootID());
    leafnode_ptr node = boost::dynamic_pointer_cast<LeafNode>(ParseNode(page, tree<std::string, binary>::fns));
    memslice k = node->get_at(0)->first;
    REQUIRE( traits::convert<std::string>::from_bytes(node->get_at(0)->first) == "one" );
    REQUIRE( traits::convert<binary>::from_bytes(node->get_at(0)->second) == binary("\x01\x00\x01", 3) );
    REQUIRE( traits::convert<std::string>::from_bytes(node->get_at(1)->first) == "two" );
    REQUIRE( traits::convert<binary>::from_bytes(node->get_at(1)->second) == binary("\x02\x00\x02", 3) );
}

TEST_CASE("test inserting into overflow block", "[nodes]")
{
    be::mem mem(1024);
    tree<int, int> t(maybe_nodeid(), mem);

    // This should produce a leaf node with 1 key and 2 overflow blocks
    for (int i = 0; i < 300; i++)
        t.insert(0, i);

    mutation mut = t.write();

    REQUIRE( mem.blockCount() == 3 );

}

TEST_CASE("remove branch when empty")
{
    be::mem mem(1024);

    // GIVEN
    put_result root = make_internal()
        .brn(make_leaf(intToIntTree)
           .kv(1, 1)
           .put(mem)) // 0
        .brn(make_leaf(intToIntTree)
           .kv(2, 2)
           .put(mem)) // 1
        .put(mem); // 2
    tree<int, int> edit(root.nodeID, mem);

    // WHEN
    edit.remove(1, true);
    mutation mut = edit.write();

    // THEN
    mempage page = mem.get(*mut.newRootID());
    internalnode_ptr internal = boost::dynamic_pointer_cast<InternalNode>(ParseNode(page, tree<int, int>::fns));

    REQUIRE( internal->branchCount() == 1 );

    REQUIRE( mut.obsoleteIDs().size() == 2 );
    REQUIRE( mut.createdIDs().size() == 1 );
}

TEST_CASE("upserts")
{
    be::mem mem(1024);

    // GIVEN
    put_result root = make_internal()
        .brn(make_leaf(intToIntTree)
           .kv(1, 1)
           .put(mem)) // 0
        .brn(make_leaf(intToIntTree)
           .kv(3, 3)
           .put(mem)) // 1
        .put(mem); // 2
    tree<int, int> edit(root.nodeID, mem);

    SECTION("upsert becomes an update")
    {
        edit.upsert(1, 2, true);
        mutation mut = edit.write();

        tree<int, int> query(*mut.newRootID(), mem);
        REQUIRE( query.find(1).value() == 2 );

        // Check rank as well
        REQUIRE( query.find(3).rank() == 1 );
        REQUIRE( query.seek(1).key() == 3 );
    }

    SECTION("upsert becomes an insert")
    {
        edit.upsert(2, 2, true);
        mutation mut = edit.write();

        tree<int, int> query(*mut.newRootID(), mem);
        REQUIRE( query.find(1).value() == 1 );
        REQUIRE( query.find(2).value() == 2 );

        // Check rank as well
        REQUIRE( query.find(3).rank() == 2 );
        REQUIRE( query.seek(2).key() == 3 );
    }
}

TEST_CASE("inserting after overflow node")
{
    be::mem mem(1024);

    // GIVEN
    put_result root = make_leaf(intToIntTree)
           .kv(1, 1)
           .kv(3, 3)
           .overflow(make_overflow()
                .val(4)
                .val(5)
                .put(mem))
           .put(mem);
    tree<int, int> edit(root.nodeID, mem);

    // WHEN
    edit.insert(4, 4);
    mutation mut = edit.write();

    // THEN
    leafnode_ptr node = loadLeaf(mem, *mut.newRootID());
    REQUIRE( node->pairs.size() == 5);
}

TEST_CASE("inserting after overflow node too big to pull in")
{
    be::mem mem(100);

    // GIVEN
    put_result root = make_leaf(intToIntTree)
           .kv(1, 1)
           .kv(2, 2)
           .kv(3, 3)
           .overflow(make_overflow()
                .val(4)
                .val(5)
                .val(6)
                .val(7)
                .val(8)
                .val(9)
                .val(10)
                .val(11)
                .put(mem))
           .put(mem);
    tree<int, int> edit(root.nodeID, mem);

    // WHEN
    edit.insert(4, 4);
    mutation mut = edit.write();

    // THEN
    internalnode_ptr internal = loadInternal(mem, *mut.newRootID());
    leafnode_ptr left = loadLeaf(mem, internal->branches[0].nodeID);
    leafnode_ptr right = loadLeaf(mem, internal->branches[1].nodeID);

    REQUIRE(left->pairs.size() == 3);
    REQUIRE(!left->overflow.empty());
    REQUIRE(right->pairs.size() == 1);
}

TEST_CASE("root has to split because its too large")
{
    be::mem mem(64);

    // GIVEN
    put_result root = make_leaf(intToIntTree)
           .kv(1, 1)
           .kv(3, 3)
           .overflow(make_overflow()
                .val(4)
                .val(5)
                .val(6)
                .val(7)
                .val(8)
                .put(mem))
           .put(mem);
    tree<int, int> edit(root.nodeID, mem);

    // WHEN
    edit.insert(4, 4);
    mutation mut = edit.write();

    // THEN
    internalnode_ptr internal = loadInternal(mem, *mut.newRootID());
    internalnode_ptr int1 = loadInternal(mem, internal->branches[0].nodeID);
    internalnode_ptr int2 = loadInternal(mem, internal->branches[1].nodeID);
}

TEST_CASE("seeking after moving guaranteed changes into a subnode")
{
    // This should just update the itemcount when pushing down,
    // and not update the leaf node.
    be::mem mem(512, 20);

    // GIVEN
    put_result root = make_internal()
        .brn(make_internal()
             .brn(make_leaf(intToIntTree)
                  .kv(10, 10)
                  .put(mem))
             .brn(make_leaf(intToIntTree)
                  .kv(20, 20)
                  .put(mem))
             .put(mem))
        .brn(make_leaf(intToIntTree)
           .kv(30, 30)
           .put(mem))
        .put(mem);

    // WHEN
    tree<int, int> edit(root.nodeID, mem);
    edit.insert(15, 15);
    edit.insert(31, 31);
    edit.insert(32, 32);
    mutation mut = edit.write();
    finish_mutation(mem, mut, true);

    // THEN: seek works
    tree<int, int> query(*mut.newRootID(), mem);
    REQUIRE( query.seek(2).value() == 20 );

    // THEN: leaf unchanged
    leafnode_ptr leaf = loadLeaf(mem, nodeid_t((size_t)0));
    REQUIRE( leaf->pairs.size() == 1 );
}

TEST_CASE("keeping unpushed unguaranteed changes in the top node")
{
    // The top node is a great place to keep unguaranteed changes until
    // at least a single push needs to happen...
    be::mem mem(512, 20);

    // GIVEN
    put_result root = make_internal()
        .brn(make_internal()
             .brn(make_leaf(intToIntTree)
                  .kv(10, 10)
                  .put(mem))
             .brn(make_leaf(intToIntTree)
                  .kv(20, 20)
                  .put(mem))
             .put(mem))
        .brn(make_leaf(intToIntTree)
           .kv(30, 30)
           .put(mem))
        .put(mem);

    // WHEN
    tree<int, int> edit(root.nodeID, mem);
    edit.remove(20, false);
    mutation mut = edit.write();

    // THEN
    internalnode_ptr int1 = loadInternal(mem, *mut.newRootID());
    REQUIRE( int1->editQueue.size() == 1 );
}

TEST_CASE("seeking after moving unguaranteed changes into a subnode")
{
    // This should push all the way to the bottom WHEN pushing, because
    // that's the only way to update the counts properly.
    be::mem mem(512, 20);

    // GIVEN
    put_result root = make_internal()
        .brn(make_internal()
             .brn(make_leaf(intToIntTree)
                  .kv(10, 10)
                  .put(mem))
             .brn(make_leaf(intToIntTree)
                  .kv(20, 20)
                  .put(mem))
             .put(mem))
        .brn(make_leaf(intToIntTree)
           .kv(30, 30)
           .put(mem))
        .put(mem);

    // WHEN
    tree<int, int> edit(root.nodeID, mem);
    edit.remove(20, false);
    edit.insert(31, 31);
    edit.insert(32, 32);
    mutation mut = edit.write();
    finish_mutation(mem, mut, true);

    // THEN
    tree<int, int> query(*mut.newRootID(), mem);
    REQUIRE( query.seek(1).value() == 30 );
}


text:
Q: How to analyze changed history in Git We use Git in a  "god repository" workflow -- one server and repo (the GR) are the official history and people collaborate as they like, pushing to the god server when commits are ready.
Recently a colleague had a problem.  They had pushed some commits on the GR's maintenance branch, but their colleague had pulled and couldn't see the changes.
Me, I figured the guy didn't really push, or had pushed to the wrong repository, or something like that.  I log in to his account, navigate to the repository, do git status, and see that indeed everything is up to date.  I do a git fetch, and I see origin/maintenance has a forced update message next to it.
I do a merge and push and everything is fine -- except that it seems that someone changed the history on the GR, which is a no no (except for occasionally moving a tag).
Is there anything I can do to try to figure out where the history changed, how it changed, and who did it?

redpajama_set_name: RedPajamaStackExchange


text:
Liverpool FC View from the Kop - 'Dortmund was evidence of how far Reds have come under Klopp - time to make Europa League the priority'
We chat to Joel Rabinowitz, writer for The Anfield Wrap and Anfield HQ, about Dortmund, Stoke and Jordan Henderson's latest set-back
Joe Rimmer
Liverpool manager Jurgen Klopp applauds the fans after the final whistle in the UEFA Europa League Quarter Final, First Leg match at Signal Iduna Park, Dortmund. PRESS ASSOCIATION Photo. Picture date: Thursday April 7, 2016. See PA story SOCCER Dortmund. Photo credit should read: Adam Davy/PA Wire
How good was the Reds' performance in Dortmund?
If you'd offered me a 1-1 draw before kick off I'd have taken it, no doubt. As it happens there is a slight sense of a missed opportunity, such were the chances we created. Origi could have (and should have) put us 2-0 up going in to half time. Lovren should also have buried that header in the first half and I still have no idea how Weidenfeller kept out Coutinho twice in succession.
Ultimately, this was a really accomplished European away performance, reminiscent of the kind of display we regularly saw under Rafa Benitez. If you want a marker for how far Klopp has taken this Liverpool side, this was the evidence for it. We simply weren't capable of producing such a disciplined and well organised defensive display against opposition of this calibre under Brendan Rodgers. Klopp had a game plan in mind and was able to implement it superbly.
Special mentions must go to Lovren and Sakho who were tremendous at the back, making several crucial blocks and interceptions. In all honesty Reus and Aubameyang could hardly made an impact, which speaks volumes about our defence on the night. Emre Can also deserves credit for maintaining his discipline after picking up a very early booking. Thought he was superb.
Borussia Dortmund 1-1 Liverpool
Full-time report
Henderson worry
James Pearce's verdict
Origi interview
What the papers say
Klopp: 'We were brilliant'
'I can become a big player'
Origi's selection was a bit of a surprise - what did you make of Klopp's decision?
A bold, bold call by Klopp to drop a striker of Daniel Sturridge's calibre in the biggest game of the season so far. Sturridge will not have been pleased to sit on the bench for such an important occasion but in fairness he could hardly complain. He didn't look right against Spurs at the weekend. Whether it's a mental or physical issue with him I'm not so sure, but he didn't provide the kind of energy and movement Klopp demands from his forward players.
Origi certainly grasped his opportunity with a terrific performance, constantly running the channels and occupying the Dortmund defenders. He was a nuisance throughout. His hold up play was superb, bringing his team mates into play. Constantly on the last shoulder of defenders, his willingness to make those incisive runs in behind paid dividends with his goal. He took it really well, showing great composure to hold of Piszczek before slotting the finish past Weidenfeller. It's a shame he couldn't work his magic again on the brink of half time, but Origi certainly did his credentials no harm at all with a really positive display. Had the decision backfired, Klopp
would have rightly come in for plenty of criticism but it turned out to be a perfect judgement to go with Origi.
Klopp hopeful Henderson's Liverpool FC season may not be over
Liverpool U18s thrash Everton in the mini derby
Blood Red: Sturridge must take Europa snub on the chin and show his class
Where does the tie stand now?
Scoring the away goal definitely takes some of the pressure off- it was really important we managed to get that. It gives us a very slight advantage ahead of the second leg next week and I think this showed a lot of people that Liverpool are much better than their league position suggests. This Dortmund side are unbeaten in 2016, just five points off Bayern Munich in the Bundesliga, but we played without fear and matched them on their own turf.
Next week we need to go and do exactly the same again, playing with that same level of intensity and organisation- but taking more care when in possession of the ball. Tuchel will demand a response from his side and you fancy Dortmund to score anywhere on their day, so the whole team will have to maintain absolute concentration throughout the 90 minutes.
Like Klopp says, I'd say the tie is still 50-50, but having put in an impressive shift away from home there's every reason to believe the Reds can finish the job in front of the Anfield crowd. It will be tough, of course, but this result has given us a solid platform to build on. It should be a cracker.
Stoke on Sunday, what lineup would you go with?
Joel would go with Sheyi Ojo on Sunday
Had we gone on to finish the job against Southampton at 2-0 up, we'd be right in the race for the top four by this stage. We didn't, though, and I think that defeat has ended any realistic chances of qualifying for the Champions League via top four. The focus is now entirely on the Europa League, so I'd be looking to use the remaining league games to give some of the fringe players an opportunity - and try to get as far up the table as possible.
As for Stoke on Sunday, Klopp has a selection dilemma as he must decide whether to rest key players ahead of Thursday night's second leg against Dortmund. Flanagan would seem an obvious choice to give either Clyne or Moreno a rest and I'd like to see Brad Smith get a run out in the league. Lovren and Sakho are developing a strong understanding together so I see no need to make any changes there.
Emre Can is suspended and Henderson injured, so Allen and Milner look certain to start. This game will probably come too soon for Lucas, but Kevin Stewart could be a good option to fill in one of the midfield positions. Firmino has just returned from injury so it would seem an unnecessary risk to play him, especially as he will most likely be an important figure on Thursday night.
Sturridge will surely start up front in this one after playing just 10 minutes against Dortmund. Lallana came off early on Thursday night, so I'd start him and give Coutinho a rest so he's fresh for the Dortmund game. I'd like to see Sheyi Ojo get a start- he's been in great form for the U21s and has real quality.
Mignolet; Flanagan, Lovren, Sakho, Smith; Stewart, Allen, Milner; Lallana, Ojo, Sturridge.
That'd be my team.
Henderson injury, out for up to 8 weeks. How much will he be missed?
It's been a nightmarish season for Hendo
You've got to feel sorry for Hendo - it's been a nightmarish season for him. He played well against Spurs at the weekend after his recent sub-par performances. After playing through the pain of this chronic heel problem which has hindered him all season, this latest knee injury is a cruel blow. He is unlikely to feature again this season with his place at Euro 2016 now in jeopardy.
There's no denying that Henderson hasn't performed to his best level this season, but I think a lot of that is to do with his heel injury. For a player whose athleticism and work rate are among his greatest strengths, this has been a real problem. Some of the criticism from fans has been unjustified, however. It's easy to forget how important he has been for Liverpool over the past two seasons and he remains a very good player when fit and firing.
Questioning his captaincy credentials is one thing, but suggestions that he should be sold in the summer seem short-sighted and premature to me. Henderson remains an imporant player for Klopp, even if not a guaranteed starter next season. You can debate his quality but you cannot fault his attitude or commitment, which are important qualities to Klopp.
I think he will be missed throughout the remainder of the season, especially if Liverpool progress further in the Europa League. Emre Can has come on leaps and bounds under Klopp and his partnership with Henderson has proved solid, albeit lacking in the creative deparment. That said Joe Allen put in an impressive cameo display against Dortmund when replacing Henderson for the second half. He can turn quickly, carry the ball and press effectively which makes him the best option to replace Henderson in the short term. Milner can always do a job when called upon but he remains more effective out wide than in a central role.
Henderson's absence will be a blow, but I'd back Emre Can to step up and show why he can be the centre piece of Liverpool's midfield for years to come.
Top four looks gone, is it time to use youngsters in the league?
Germany's Jonas Hector fits the bill for Liverpool
With top four no longer a feasible target, bar an extraordinary turn of events, Klopp has the option to use the remaining league games to experiment with some younger players, giving them an opportunity to impress and work their way into his plans ahead of his inevitable
squad reshuffle in the summer.
It could be the right time to finally give goalkeeper Danny Ward his chance after returning from a successful loan spell at Aberdeen back in January. Having made his senior Welsh debut in the recent international fixtures, it would be worth giving Ward a chance given Mignolet's inconsistent performances as first choice. With little to play for in the league, there wouldn't be much pressure on Ward, so this could represent a good chance for him to show what he can do.
I would expect Klopp to dip into the transfer market for a new left back to provide competition for Alberto Moreno - Cologne's Jonas Hector fits the bill and is reportedly available for around €10 million. However, Brad Smith has shown promise on several occasions this season and I'd like to see the Aussie left back given the chance to impress in the league.
Given Emre Can's domestic suspension and Henderson's injury, there is a chance for Klopp to experiment with his options in midfield. We know what Milner and Allen are all about, but I'd like to see Kevin Stewart and Cameron Brannagan given an opportunity in midfield. Both impressed
in the domestic cup campaigns when called upon and deserve a chance to show they can do it against Premier League opposition.
Liverpool's squad is short of quality wingers, but Sheyi Ojo is arguably the brightest youngster of the current crop. He scored his first goal for the club with a superb finish in front of the Kop in the League Cup tie against Exeter in January and has continued to light up U21 side with his pace and trickery, so I'd like to see him in action in the league. Ryan Kent is another promising talent who has hardly featured thus far for the senior side, so it would be interesting to see how he copes at this level.
Lallana - written off by many, but has come storming back under Klopp
If there's anything we've learned in Klopp's first six months in charge, it is never to write players off too early. Liverpool's results under Klopp have been mixed, but several individuals have improved dramatically under the German's management. Dejan Lovren, for instance, has resurrected his Liverpool career after a torrid first season, emerging as the dominant centre half we paid £20 million for.
But I'd like to draw attention to one man in particular who has embodied the kind of attitude and desire Klopp demands from his team. Adam Lallana has faced plenty of criticism since his £25 million move from Southampton, but his performances under Klopp have been excellent for the most part, to the point where he has become one of the first names on the team sheet.
He could still add more goals to his game, but Lallana's technical skill, matched with a terrific work rate and pressing ability have alerted everyone to his considerable quality. He may not be a starter next season, especially if a certain Mario Gotze arrives through the doors at Melwood, but Lallana deserves huge credit for his performances as one of Liverpool's most consistent players this season. He really is a very classy footballer.
Joe Allen
Barclay's Premier League


text:
Suzuki Marine USA makes waves at IBEX 2021
(TAMPA, FLA.) — Suzuki Marine, USA LLC pulled out all the stops at the 2021 IBEX Show in its new hometown of Tampa, Florida. Highlights of the show that ran from September 28 to September 30 at the Tampa Convention Center included earning a Soundings Trade Only Most Innovative Companies Award for 2021 and a press conference at the Suzuki exhibit to introduce new Suzuki Precision Controls 2.0 for 2022, update attendees on Suzuki's innovative Microplastics Filter system for outboard motors, and celebrate the company's recent move to Florida with key government officials.
The show —back in a live, in-person format following a virtual IBEX in 2020 — started with a bang and continued on from there. At the show's traditional opening industry breakfast, keynote speaker Florida Governor Ron DeSantis recognized Suzuki Marine by name for its relocation to the state. He did so in the context of expressing the importance of the state of Florida to America's marine business — and vice versa.
Later that afternoon, key members of the boating press, boat builders, and other industry representatives gathered in the Suzuki booth to hear from Suzuki Marine Vice President/Sales George "Gus" Blakely. He shared information about new Suzuki Precision Controls 2.0 for 2022 and updated the crowd about Suzuki's ongoing environmental stewardship efforts, in particular the company's innovative Microplastics Filter device for use on Suzuki outboards. Suzuki Marine is also working hard to drastically reduce the amount of plastic waste it generates by changing its packaging and shipping materials and working with organizations such as Keep Tampa Bay Beautiful to engage in regular waterway cleanup activities. During the show, Suzuki also sponsored Hydration Stations and recycle bins throughout the exhibit hall to reduce the use of plastic cups and water bottles and properly dispose of them when finished — demonstrating two simple, yet effective ways companies can make a tangible difference for the environment.
Two very important special guests then took turns to address the crowd. The first was Jim Patronis, Chief Financial Officer for the State of Florida, who used the opportunity to welcome Suzuki Marine to the state and commend the company for making Tampa its new corporate headquarters. In his comments, he expressed appreciation not only for the business impact Suzuki Marine is making, but also for Suzuki's ongoing commitment to protecting and enhancing the state's coastal and marine environments.
Following Patronis' remarks, Mark McQueen, City Manager of Panama City, took center stage to talk about Suzuki's recent opening of a Suzuki Marine U.S. Technical Center on a 20-acre waterfront site in Panama City. He commented that Suzuki Marine saw past the recent hurricane damage the area had sustained to envision what this unique property could become — a state-of-the-art Technical Center that will help Suzuki work closely with boat builders and dealers to develop the innovative outboard technologies of tomorrow.
Following these remarks, the assembled press, guests, government representatives and their staffs went outside where the Suzuki-powered water taxi L'Attitude Lindsey was waiting to take the group on a scenic tour of Tampa's downtown waterfront. Not only is this unique vessel powered by twin Suzuki DF140 outboards; it has been testing Suzuki's micro-plastics filters since June. This boat runs about 3,000 hours per year, making it an ideal platform to collect not only micro-plastic pollution around Tampa Bay, but also important test data Suzuki can use to refine and perfect this system in preparation for it's eventual release to the boating public. As they toured the bay, the group learned more about Suzuki's environmental efforts and business plans for the future in Florida, the heartland of the American recreational boating industry.
"We had a great IBEX Show and we are looking forward to carrying this momentum into the coming year," said Blakely. "All of us at Suzuki Marine want to express our gratitude to Jim Patronis and Mark McQueen, for taking time out of their busy schedules to come to the show and help us share with the press and the industry our exciting plans for the future" added Blakely.
/~/media/IBEX Summary.ashx


text:
package schema

import (
	"bytes"
	"encoding/gob"
	"testing"
)

func BenchmarkSerializeMetricDataArrayGob(b *testing.B) {
	metrics := getDifferentMetricDataArray(b.N)
	b.ResetTimer()
	var buf bytes.Buffer
	enc := gob.NewEncoder(&buf)
	err := enc.Encode(metrics)
	checkErr(b, err)
	b.Logf("with %10d metrics -> final size: %.1f bytes per metric", b.N, float64(buf.Len())/float64(b.N))
}
func BenchmarkDeSerializeMetricDataArrayGob(b *testing.B) {
	metrics := getDifferentMetricDataArray(b.N)
	var buf bytes.Buffer
	enc := gob.NewEncoder(&buf)
	err := enc.Encode(metrics)
	checkErr(b, err)
	var out []*MetricData
	b.ResetTimer()
	dec := gob.NewDecoder(&buf)
	err = dec.Decode(&out)
	checkErr(b, err)
}


text:
Online and On Air
Happy National Bike to Work Day!
Project updates, commentaries, events and news about health across the nation from the County Health Rankings & Roadmaps team.
Why bike to work? It's fun, it's green, and above all, it's healthy.
National Bike to Work Day, sponsored by the League of American Bicyclists, organizes advocates and enthusiasts from across the country to enjoy a greener, healthier commute.
Research shows that cycling and pedestrian infrastructure improvements such as bicycle lanes, bicycle racks, bicycle/walking trails, and shared bicycle programs promote physical activity. Increasing access to spaces like community trails and parks also increases the physical activity of a community.
There is also strong evidence that the federally-supported program Safe Routes to Schools increases the number of students walking or biking to class. By educating the public on the health benefits and improving walking and bicycling routes through legislation, Safe Routes to Schools projects in urban areas may also increase physical activity levels for adults.
Minneapolis, a 2013 RWJF Roadmaps to Health Prize winner, is intentionally designed with bikeways and paths to encourage active transportation, including biking and walking.
Community leaders in Minneapolis realize that one of the most efficient ways to improve public health is to build up resources on an established foundation. Venture North Bike Walk & Coffee, a bicycle repair and retail center, is working to bring the city's culture of biking to, largely lower-income, North Minneapolis. The non-profit is able to sell affordable bikes to the members of the community by fixing up old bikes. It also works closely with the youth to train them how to fix and tune up bikes—real, solid job skills.
• Check out evidence-informed policies and programs
Striving for Equal Pay: Coalition Building in Kansas City
Kansas City residents have long strived to eliminate gender discrimination and improve women's rights as a way to build a healthier future for everyone. Local leader...
2020-2021 RWJF Culture of Health Prize Winners Announced
Ten communities have been selected as winners of the 2020-2021 RWJF Culture of Health Prize. The Prize honors communities at the forefront of advancing health...
Building Civic Health through Healthy Democracies
In June 2021, we released the Civic Engagement and Population Health Compendium, which articulates concepts and measures relevant to civic engagement that extend...


text:
MARTIN SHERMAN GREAT JEWISH WRITER TURNS HIS THOUGHTS IN SOLIDARITY WITH THE SUFFERING POOR OF IRAN AGAINST THE FASCIST ISLAMISTS IN POWER
The last picture shows Kurds being executed by Iran. The Fascists "leftists" like David Icke are totally silent on the gay executions in Iran and are also full of hatred for the Kurds. Meanwhile Israeli Jews fight in solidarity with the oppressed Iranians
The Jews today are the great internationalists because they are forced to be. In the latest article from Martin Sherman's Into The Fray series Sherman at the end of his article switched his focus to the suffering people of Iran under the Ayotallohs. He quoted an authority on this issue:
"In the words of Saba Farzan, a German-Iranian journalist and director of a Berlin think tank, published in The Jerusalem Post: "The Vienna deal bears a very grave danger for Iran's civil society. Not only won't we see their economic situation improve, but the regime will also have an incentive to abuse human rights more severely. A flood of cash is going into the pockets of this leadership.
It will be used to tighten their grip [on power] and to further imprison, torture and kill innocent Iranians."
Martin Sherman of course agreed with this pointing out:
She is, of course, right – and that is one of the greatest tragedies of the travesty concocted in Vienna last week."
The political position of Sherman and many Jews today is in very strong contrast with the position of assorted "Leftists" who are better described as pro-Iran Fascists rather than any lind of principled socialists. I of course belong to the latter and will remain so because the capitalist system is in interminable crisis.
There is no defence from the likes of the ex-BBC man David Icke of the people of Iran suffering under the Fascist Regime, set up there in 1979 in a brutal counter-action by the Islamist Fascists against a very widespread revolution. The Fascists of Islam were organised and clear as to what they wanted while the left was confused by the Stalinist Tudeh Party and Revisionists like the SWP/WRP, who cast illusions in Islam as a "revolutionary" force that they could do business with. That message was political poison. The Tudeh Stalinists themselves (those who could not flee abroad) were physically eliminated. This left a situation where the progressive and revolutionary youth were left without a leadership of any kind. This immediately reduced these youth to isolated groups who fought bravely but were now facing the full power of the Islamist State which rapidly pulverized these groups one by one, murdering most.
I find it absolutely astounding but also very revealing that progressive Jewish people like Martin Sherman should in his article last week have opened his mind up to not only the plight of his own Jewish people of Israel (who are directly threatened with nuclear destruction – not an exaggeration these are the words of many [even countless] Iranian Fascist leaders over many years, literally thousands of anouncements which was documented partly by the ADL)
AND HERE IS THE CLINCHER
While these mouthy conspiracy theorists like Icke and numerous womens libbers and even Gay Groups are supporting these Iranian Fascists and have not a thought for the repressed youth and women in Iran
The Zionist Jews of Israel and abroad are turning their thoughts tot he dire plight that faces the defenceless people of Iran who oppose these brutal thugs.
Into the Fray: The Iran deal – moronic, myopic, malevolent, mendacious
http://www.facebook.com/permalink.php?story_fbid=420047004869822&id=146436225564236]
Posted in ISIS	| Tagged Against Iranian Fascism, Fascist "Leftists", Gays, Iran, jews, Jews in solidarity with Iranian poor	| Leave a reply
TURNING POINT…ISRAEL ACTS FOR FIRST TIME
(from Into the Fray: Israel's lethal land-for-peace laureates by Martin Sherman)
First picture Daily Mirror, picture above Daily Mail. Therefore we know! the people do know! These forces of the Jihad are hammering on the door of Israel especially from the Sinai. The only way that Israel can survive this Jihad is by sharpening its own resources and the only resource it has really is the State of Israel. The article by Martin Sherman is essentially about sharpening that state as are my remarks which follow. Please read, comment and get involved.
Thus, Begin surrendered the entire Sinai Peninsula (won in a war of anticipatory self-defense) with all its strategic depth, mineral wealth and economic potential
This is a nutshell is the theme of this article by Martin Sherman on Jerusalem Post today. It is a masterly exposure of a deadly theme, that if you surrender land as strategic position to an enemyy you will rue the day.
This is a universal theme in world history. In the Brest Litovsk treaty the Bolsheviks having won the revolution in 1917 were forced to bow the knee and to accept huge cuts to their empire. But as the following passage makes clear Trotsky (Lev Davidovich) did so with eyes wide open, open more than most:
"The strongest, in a military sense, proved to be Germany, due to the power of its industries and due also to the modest rational character of these industries side by side with a time-worn, anachronistic political system. It was shown that France, largely because of its petty bourgeois economy, had fallen behind Germany, and even so powerful a colonial empire as England, because of the more conservative and routine character of its industries, proved to be weaker in comparison with Germany. When history placed the Russian Revolution face to face with the question of negotiating peace we were not in doubt that we would have to settle the bill for the three and a half years of war – unless the power of the international revolutionary proletariat should decisively upset all calculations. We did not doubt that in German Imperialism we had to deal with an opponent thoroughly saturated with the consciousness of his colonial power, a power which in the course of this war, has come so plainly to the fore."
Sadly what characterises all of the patched up "agreements" that Israel has made with a deadly Islamist enemy have been characterised not with that broadness of vision which was so characteristic of those two quite unique leaders Lenin and Trotsky – but (sad to say) with extreme narrowness.
Thus these "agreements" such as that of Begin, Dayan re The Temple, or Sharon were not based at all on any real knowledge but rather on pious hopes and "humanitarian" posturing of the very worst kind.
There was a complete lacking in even basic knowledge of what was Islam.
This had the telling experience (in another important área of combat on this theme) of leading American Jewish figures campaigning on behalf of the Islamist Killers in Bosnia and Kosovo and attacking Milosevic on behalf of reactionary British, German, French and US Imperialists of NATO
("Conversations with Elie Wiesel"…in which he claims Milosevic wanted to expel and torment the civilians etc. which was all lies and based on the US propaganda machine and fed by the Jihadist lies of the Izetbegovic Islamists in Bosnia)
Wiesel shows that just because you have gone through one experience does not mean that you have understood it. Wiesel was supporting the Jihad in Bosnia even though the leader of the Jihad Hajj Amin el Husseini had been an instigator and supervisor of the Nazi death camps. In which Wiesel had paid the price. But his knowledge weas partial.
Sheer blindness and ignorance rather than stupidity has been at the base of almost all of the moves Israel has made since its formation. In fact the same lacking in, and of, real knowledge is very evident in the founders of Zionism, like Hess even on to Herzl.
But there was one very sober analysis made at a most early stage (1852), that of the much maligned Karl Marx, who wrote emphasising the central truth of the present Sherman article in discussion:
QUOTE"The Koran and the Mussulman legislation emanating from it reduce the geography and ethnography of the various peoples to the simple and convenient distinction of two nations and of two countries; those of the Faithful and of the Infidels."
A very simple statement indeed! Yet when you bother to absorb its content you will soon discover that Marx has written all there is to write about Islam and that if armed with that then none of this Jewish land would have been handed to this enemy. Not by Begin! not by Sharon! Not by Dayan! And not by Rabin!
I find it absolutely mind boggling the kind of barbs directed against socialism by the so called anti-Jihadists of today. The fact is that the founders of socialism were more clear than anybody else as to what precisely was Islam.
In fact Lev Davidovich in his clear calls for Jews in the 1930s to make their way to Palestine and to set up their state there, and specifying Mohammedanism as the enemy, and that the Jews had to make their state defensible in that regard, showed he too understood Islam as had Marx.
Looking back it seems that the more people grow old the stupider they get.
If only the Jewish people had been allowed to look the statement of Marx on Islam straight in the face and took it for what it was. The sheerest warning arguably ever made about the Fascist nature of Islam – then things would have been very different indeed and today's warning article by Martin Sherman would not have been so necessary.
Nowadays there are so many paid agents who are presenting as "marxists" people like Chomsky who explicitly hates us, or whatever, and do everything positive to present Islam as progressive. And the Anti-Jihadists in the pay of the state department who litter the blogs do exactly that as well. It is "leftist" this and "leftist" that all the way to perdition.
As Martin Sherman says clearly in this article – the events of today are being caterpulted in an alarming manner. Events do not proceed in slow evolution but in "Darwinian leaps" as presented by David Jay Gould, and this applies in spades to the critical situation facing Israel.
Israel has always been in war since 1948 but now must prepare for critical war situation on a scale that dwarfs 1948 and 1967.
This calls for sharpening the weapon and the only weapon Jews have is the weapon of the state of Israel. It is the state which must be sharpened.
A new role will certainly be found for the patriot Bibi Netanyahu who will forever remain in our hearts for his pioneering struggle against Iran, and especially against the sponsor of Iran President Obama, in Congress on March 3 2015. He articulates ideas better than anyone I know. But the ideas articulated by Bibi must be formulated elsewhere. Weare in a qualitatively different situation. Indeed in a different world.
Consider the steps that must be taken and we can understand better the way to achieve them:
SOME CONSIDERATIONS:
Be objective about Israel. What is it? Surely the Jewish Homeland. Only Jews can vote the the Knesset. The rest is nonsense.
That (the precious) Knesset of the Jews holds the power. Disband as of now the Supreme Court. Trust the Jews a great people to rule with firmness, wisdom and benevolence.
Place the Karl Marx understanding of Islam in front. No Muslims can live in the Holy Land. Islam is not Holy. Islam is an ideology of war on us all. We can though proceed in a humanitarian way here but with great firmness. Always with firmness to the strategic end which is no Muslims in the Holy Land!
Define the borders: They are Golan, Jordan Valley in fullest sense, the sense of Weismann on 3 january 1919 with support from no less than Feisal, border with Egypt having taken Sinai on defensive basis, and sea.
As for democracy that is a indeed the highest form of democracy in this case, which can only be defined as the democracy of preventing a new Holocaust of the Jews by defeating the Jihad.
Posted in ISIS	| Tagged definition of Islam by Marx, karl Marx on Islam, Martin Sherman, No Muslims in Holy Land	| Leave a reply