text:
Home Uncategorized 125 Banglades...
125 Bangladeshi migrants return from Myanmar
Dhaka: At least 125 Bangladeshi trafficking victims who were rescued from the Bay of Bengal were brought back home from Myanmar on Tuesday. Myanmar Navy reportedly rescued some 935 fortune seekers on May 21 and 29 from their territorial waters and claimed that all of them were from Bangladesh, Xinhua reported. In collaboration with the International Organisation for Migration (IOM), some 501 Bangladeshis have so far been repatriated from Myanmar in four phases since June.
www.newsbangladesh.com
According to sources, some 325 Bangladeshis are still on the waiting list to return home from Myanmar. Earlier, IOM National Program Officer Asif Munier said they have completed all formalities for the repatriation. He added that one or two more people could be included in the list to be handed over to the representatives during the flag meeting. The list includes 20 to 25 adolescents, the IOM official said adding that they would provide humanitarian help for them until they reach home.
Bangladesh Court Imposes Ban on Single-Use Plastic Products Across The Country
The plastic waste carried by the country's 54 rivers and generated in coastal regions were dumped into the Bay of Bengal, posing threat to marine resources and biodiversity
Bangladesh court


Prayers are going out to another family of an LFO member.
Page Six is reporting that Devin Lima has passed away after battling cancer.
Lima had previously been diagnosed with Stage 4 cancer nearly a year ago. Around the same time, the pop star underwent surgery to remove the mass from his stomach.
The surgery was believed to be successful.
Prior to the diagnosis, the band was in the midst of planning a tour, but that was put on hold so that Lima could focus on his health.
Lima was 41 at the time he passed away.
LFO fans may recall another member of the band, Rich Cronin, passed away eight years ago due to leukemia.
Please keep Lima's friends and family in your thoughts and prayers today.


DC-8e-ii $1 1.6.1878 PCGS Very Fine 30PPQ.
A gorgeous Series B "Payable at Montreal" variety with the lettered "1 One Dollar" border. The grading company's designation of "Premium Paper Quality" highlights this example along with deep inks, bright paper, and strong serial number embossing.


text:
Ulrich Schamoni (9 de noviembre de 1939 - 9 de marzo de 1998) fue un director, guionista, actor y empresario de medios de nacionalidad alemana.

Biografía
Nació en Berlín, Alemania, en el seno de una familia dedicada al cine. Su padre, Victor Schamoni, era cineasta e historiador del arte, y su madre, Maria, era guionista. El padre murió en 1942 durante la Segunda Guerra Mundial. Ulrich y sus tres hermanos, Thomas, Victor y Peter, fueron en 1944 a vivir con su madre a Iserlohn, donde residía la madre de Maria Schamoni. Tras la guerra, Schamoni pasó dos años en Werl. A partir de ese momento, el tío de Schamoni, Wilhelm Schamoni, fue un padre para él y para sus hermanos. Ulrich Schamoni lo retrató en 1982 en el telefilm Der Vikar von Helmeringhausen oder Was nützt es für die Ewigkeit. Más adelante la familia se mudó a Münster, donde Schamoni hizo estudios de enseñanza secundaria. Poco antes de graduarse en 1957, decidió abandonar la escuela para ir a Múnich, donde estudió un breve tiempo en la Escuela de Arte Dramático de Ruth von Zerboni, regresando después a Berlín. Allí trabajó entre 1959 y 1964 como ayudante de dirección de, entre otros directores, Hans Lietzau y William Dieterle, y especialmente de su "Padre Director", Rudolf Noelte, del que decía haber aprendido más que de ningún otro. A los 20 años de edad, Schamoni escribió su novela Dein Sohn lässt grüßen, que inmediatamente tras su publicación en 1962 fue considerada perjudicial para los menores.

Schamoni rodó en 1964 su primer cortometraje como director, el documental Hollywood in Deblatschka Pescara, galardonado con el Deutscher Filmpreis. En 1965 rodó un nuevo documental, Geist und ein wenig Glück. Schamoni también dirigió en 1965 su primer largometraje, Es, sobre la relación de una joven pareja interpretada por Sabine Sinjen y Bruno Dietrich. El film fue un éxito de crítica y público, y en 1966 ganó cinco premios cinematográficos alemanes. Tras ella dirigió otras tres películas, entre las cuales figura Alle Jahre wieder, que ganó el Oso de Plata del Festival Internacional de Cine de Berlín de 1967. En 1967, con los beneficios obtenidos por Es, compró una casa unifamiliar en Furtwänglerstraße 19, en Berlín. Fue su residencia y lugar de trabajo. En el año 1968 presentó Quartett im Bett, un ingenioso retrato de la escena cultural y estudiantil berlinesa de izquierdas.

Ulrich Schamoni, al igual que su hermano Peter, se confirmó como un destacado exponente del nuevo cine alemán. Schamoni quería rodar alejado del cine comercial alemán, sentando las bases para un nuevo realismo cinematográfico.

A partir de 1978 produjo también películas para la televisión alemana. Más adelante, Schamoni se alejó del cine y se hizo empresario de medios de comunicación. En el año 1987 fundó la segunda emisora radiofónica privada de Berlín, Hundert,6, y en 1992 la primera emisora televisiva local privada, IA Fernsehen, donde hacía un comentario a diario. Posteriormente dejó ambas compañías.

Ulrich Schamoni falleció en 1998 en Berlín, Alemania, a causa de una leucemia, y fue enterrado en el Cementerio Waldfriedhof Zehlendorf de esa ciudad.

El 15 de marzo de 2012 se estrenó el documental Abschied von den Fröschen, sobre la vida de Schamoni. Fue realizado por su hija Ulrike, y mostraba a Schamoni afectado por una leucemia.

Filmografía
 1965 : Hollywood in Deliblatzka Pescara (corto, director)
 1965 : Geist und ein wenig Glück (TV, director)
 1965 : Es (director, guionista, actor)
 1966 : Charly May (corto, guionista)
 1966 : Der Brief (actor)
 1966/1967 : Alle Jahre wieder (director, guionista)
 1967 : Ein Duft von Blumen (TV, actor)
 1967 : Lockenköpfchen – Die Chronik des Wilfried S. oder Wie manipuliert man die Wirklichkeit? (corto, guionista, director)
 1968 : Quartett im Bett (director, guionista)
 1969 : Für meine Kinder – von Vati (corto, director)
 1969 : Die Rückkehr (TV, actor)
 1970 : Wir – zwei (director, guionista, actor)
 1971 : Eins (director, guionista, actor)
 1972 : Mein Bruder Willi (corto, director, guionista)
 1973 : Im Reservat (TV, actor)
 1974 : Chapeau Claque (director, guionista, actor)
 1979 : Was wären wir ohne uns (miniserie, director, guionista)
 1980 : So geht´s auch (serie TV, actor)
 1980 : Das Traumhaus (director)
 1981 : Die Alptraumfrau (actor)
 1982 : Der Vikar von Helmeringhausen oder Was nützt es für die Ewigkeit? (TV, director)
 1982 : Ullis Allerlei (TV, director, actor)
 1983 : Der Platzanweiser (actor)
 1984 : So lebten sie alle Tage (serie TV, director)
 1985 : Alles Paletti (TV, actor)
 2012 : Abschied von den Fröschen (documental póstumo)

Bibliografía
 Schamoni en https://www.deutsche-biographie.de, por Wolfgang Jacobsen

Referencias

Enlaces externos

Actores de cine de Alemania
Guionistas de cine de Alemania
Directores de cine de Alemania
Actores de televisión de Alemania
Fallecidos por leucemia
Nacidos en Berlín
Fallecidos por cáncer en Alemania
Fallecidos en Berlín

redpajama_set_name: RedPajamaWikipedia


text:
Diaries and Letters - Alexander II
The Tsar Liberator - by Nick Nicolason
The reign of Alexander II is marked by contrasts; while Alexander II was known as the "Tsar-Liberator" for his emancipation of the Russian serfs, he also reigned over one of the most repressive periods in Russian history and faced numerous attempts on his life, ultimately resulting in his assassination. His personal life exhibited a similar dichotomy, as he was an unprecedented benefactor to children and orphans, yet humiliated his own wife and family by installing his mistress (and later morganatic wife) and their children in rooms in the Winter Palace above his family's own quarters.
The eldest son of Emperor Nicholas I, Alexander was born in Moscow on the 17th of April, 1818. Educated by legions of private tutors, Alexander also was forced to endure rigorous military training which his father felt was crucial to the development of strength and character. In 1841, he married a Hessian princess, who, after her conversion to Orthodoxy became known as Maria Alexandrovna.
After the death of his father, he ascended the throne on the 19th of February 1855, and was crowned in the Dormition Cathedral of the Moscow Kremlin on the 26th of August, 1856. Alexander II came to the throne in the midst of the Crimean War, a devastating military conflict for Russia, in which troops were decimated, and the shortcomings of the Russian military clearly evidenced. Late in 1856, Alexander signed the Treaty of Paris, which brought the ill-fated War to a swift conclusion.
After the end of the war, Alexander acknowledged that the serf-based economy would no longer support Russia's needs to compete with nations such as Britain and France. The landowning nobility objected to this idea, and were certain that the abolition of serfdom would undermine their primary sources of income. Though Alexander understood the devastating effects the abolition of serfdom would have on the fortunes of the rich, he is reported to have addressed a group of Moscow nobles by saying: "It is better to abolish serfdom from above than to wait for the time when it will begin to abolish itself from below."
In 1861 Alexander issued the "Emancipation Manifesto" which proposed 17 legislative acts that would abolish serfdom within the Russian Empire. Alexander announced that individual serfdom would be eliminated and all peasants would be allowed to purchase land from their landlords. The State would advance the money to the landlords and would then recover it from the peasants in 49 annual sums known as "redemption payments". This was deleterious to the finances of the state, and the land reforms proved damaging to the entire structure of the Russian Empire by creating deficits, and placing the peasant farmers at the mercy of cruel landlords and unreliable crop returns. In some regions it took peasants nearly 20 years to obtain their land. Many were forced to pay more than the land was worth and others were given inadequate amounts for their needs.
Alexander also introduced other reforms and in 1864 he allowed each district to set up a Zemstvo. These were local councils with powers to provide roads, schools and medical services. However, the right to elect members was restricted to the wealthy noble landowners.
Alexander II also implemented many important and original national reforms, including universal military service and municipal and legal reorganization.
He also reevaluated foreign policy: Russia reassessed its policy of continuous overseas expansion and concentrated on strengthening its own borders. In 1867, he sold Alaska and the Aleutian Islands to the United States, and used the proceeds to gild the domes of St. Isaac's Cathedral in St. Petersburg in thanks for the peace that the Russian Empire had begun to enjoy due to his reforms.
The most important foreign policy achievement of his reign was the successful war of 1877-8 against the Ottoman Empire, resulting in the liberation of Bulgaria and annulment of the conditions of the Treaty of Paris of 1856, imposed after Russia's defeat in the Crimean War.
Alexander's reforms generally did not satisfy liberals and radicals who wanted a parliamentary democracy and the freedom of expression that was enjoyed in the United States and some other European nations
Alexander displayed a marked passion for helping orphans and children, and made personal wards of many of the children orphaned by the Crimean and Ottoman Wars. One of these, Catherine Dolgorukaya, captured his particular attention. Princess Dolgoruky, a beautiful descendant of one of Russia's oldest families ultimately became the Emperor's mistress, and the children of this morganatic union carried the title Prince and Princess Yurievsky (after Prince Yuri Dolgoruky, Catherine's earliest ancestor).
Some dissidents preferred a policy of terrorism to obtain reform and on 14th April, 1879, Alexander Soloviev, a former schoolteacher, tried to kill Alexander. His attempt failed and he was executed the following month. The government responded to the assassination attempt by appointing six military governor-generals that imposed a rigorous system of censorship and repression in Russia.
The following month terrorists used nitroglycerine to attempt to destroy the Tsar's train. However, the terrorist miscalculated and it destroyed another train instead. An attempt the blow up the Kamenny Bridge in St. Petersburg as the Tsar was passing over it was also unsuccessful.
In 1880, Khalturin constructed a mine in the basement of the winter palace under a dining-room. The mine went off at half-past six at the time that the assassins had calculated Alexander would be having his dinner. However, his main guest, Prince Alexander of Battenburg, had arrived late and dinner was delayed and the dining-room was empty. Alexander was unharmed but sixty-seven people were killed or badly wounded by the explosion.
The fading health of the Empress and the constant threats on his own life forced Alexander II to think carefully about further reform and his personal future, and so, on 25th February, 1880, Alexander announced that he was considering granting the Russian people a constitution. To show his good will a number of political prisoners were released from prison. Loris Melikof, the Minister of the Interior, was given the task of devising a constitution that would satisfy the reformers but at the same time preserve the powers of the autocracy.
In January 1881, Loris Melikof presented his plans to Alexander. They included an expansion of the powers of the Zemstvo. Under his plan, each zemstov would also have the power to send delegates to a national assembly called the Gosudarstvenny Soviet that would have the power to initiate legislation. Alexander was concerned that the plan would give too much power to the national assembly and appointed a committee to look at the scheme in more detail.
On 1st March, 1881, Alexander was traveling in a closed carriage, from Mikhailovsky Palace to the Winter Palace in St. Petersburg. An armed Cossack sat with the coach-driver and another six Cossacks followed on horseback. Behind them came a group of police officers in sledges.
On a street corner near the Catherine Canal Sophia Perovskaya gave the signal to Nikolai Rysakov and Timofei Mikhailov to throw their bombs at the Tsar's carriage. The bombs missed the carriage and instead landed amongst the Cossacks. The Tsar was unhurt but insisted on getting out of the carriage to check the condition of the injured men. While he was standing with the wounded Cossacks another terrorist, Ignatei Grinevitski, threw his bomb. Alexander was killed instantly and the explosion was so great that Grinevitski also died from the bomb blast. The constitution was never to be granted.
On the site where he was killed, the Cathedral of the Resurrection on Blood was erected.
Please send your comments on this page to the author - Nick Nicholson
1914 Trip to Russia - Victoria Remembers
1917 Interview with Anna Vyrubova
1917 Interview with Grand Duchess Elizabeth
Alexis Almost Dies at Spala - 1912
Eyewitness Report of Party for Rasputin by Vecchi
Grand Duchess Olga - 16th Birthday at Livadia
How Rasputin Met the Imperial Family
Murder of Prime Minister Stolypin in Kiev 1911
About the Site and Bob Atchison
About Bob Atchison and the Time Machine
Boy who Dreamed of a Palace - Bob Atchison
1907 Romanov Christmas in Tsarskoe Selo
Aurochs! Imperial Hunting at Byelovvyezh in 1912
Romanov Charity Bazaar in Yalta, Crimea
Romanov Picnic in the Finnish Fjords
1923 American Interview with Patriarch Tikhon
Palace Personalities
1904 USA Article on the Romanovs
Bezique, an Imperial Pastime
Dominic Lieven on Nicholas and Alexandra
God in All Things - the Religious Beliefs of Russia's Last Empress
Grave of Anna Vyrubova
HIH Grand Duchess Elisabeth Feodorovna
House of Anna Vyrubova
Igor Sikorski and Nicholas II
Imperial Pets, the four legged family
Later Memoirs of Anna Vyrubova
On Nicholas II, his Character and his Duties
Prince Lev Golitzyn and Novi Svyet
Religious Character of Alexandra Feodorovna
The Human Side of the Tsar
Alexander I
Alexander III
Alexander Ivanovitch Spirodovitch
Anna Vyrubova
Biography of Dr. Eugene Botkin
Count Sergei Iulevich Witte
Countess Natalia Hendrikova
Countess Sophie Buxhoeveden
Dowager Empress Marie
Ernst Ludwig, Grand Duke of Hesse
Grand Duchess Cyril (Victoria Melita) by Meriel Buchannan
Grand Duchess Elizabeth
Grand Duchess Elizabeth by Meriel Buchanan
Grand Duchess Marie Pavlovna
Grand Duchess Olga Alexandrovna
Grand Duchess Olga Nicholaievna
Grand Duke Dmitri Pavlovich
Grand Duke Ernst Ludwig of Hesse by Meriel Buchannan
Grand Duke Konstantin Konstantinovich
Grand Duke Mikhail Alexandrovich
Grand Duke Nicholas Michaelovich,
Grigori Efimovich Rasputin
Nicholas I
Nicholas II
Ortino
Paul I
Peter Karl Fabergé
Prince Felix Yussupov
Princess Alice of Hesse and by Rhine
Princess Maria Victorovna Bariatinskaya
Princess Sonia Orbeliani
The Grand Duchesses - OTMA
Yakov Yurovsky
Top Forum Discussion Topics
Anastasia and the Discussion of Survivors
Alexander Palace Blogs
The English Palace at Peterhof
The Icon of our Lady of the Sign - Znamenskaya
The Feodorovskaya Icon of the Mother of God
click here - MORE BLOGS
Is Scotty Telling the Truth About Hepburn/Tracy?
Is Scotty Bowers, the famous Hollywood pimp telling the truth about Spencer Tracy and Katharine Hepburn? Here's a confirming story...
Home Builder Websites - What Pallasart Does
Pallasart been designing and programming websites for luxury home builders for more than 20 years and here's a list of the features we build into them.

redpajama_set_name: RedPajamaCommonCrawl


text:
Q: OpenCL gaussian convolution using one Kernel is slower I implemented 2D Gaussian Filter on  OpenCL using two 1D gaussian filters(gaussian separability).
I implemented 2 version of my convolution:
 - the first one uses one kernel that applies 1D filter on rows and then it transposes the image (it takes about 20 ms)

*

*the second one uses two kernel: one applies convolution and one transposes the image (it takes about 7ms - convolution and about 1ms - to transpose the image )

I evaluated the computation time of both implementation and I figure out that the implementation using two kernel is faster than one that uses one kernel
(notice that the transpose kernel has to wait the convolution kernel ).
Could you help me to figure out why the implementation using one kernel is slower, even if the setup time of just one kernel should be faster than the two kernels setup time.
Find below the OpenCL source code of the both implementations:

*

*One kernel Implementation
__kernel void ConvolutionKernel(__read_only image2d_t srcBuffer,__constant int4 *par, __constant float *filter,__local float4 *cache, __local float4 *temp,__write_only image2d_t dstBuffer)
{
    int width = par[0].x;
    int height = par[0].y;
    int widthG = par[0].z;
    int heightG = par[0].w;
    int gaussFilterWidth = par[1].x;
    int margin = 1 + (gaussFilterWidth>>2);
    int2 location;
    float4 focus,set;
    float *s = &set;
    int m,start;
    int widthGM = widthG + (margin<<1);

    const sampler_t sampler = CLK_NORMALIZED_COORDS_FALSE | CLK_FILTER_NEAREST;

    int i = get_global_id(0);
    int j = get_global_id(1);

    int iG = get_local_id(0);
    int jG = get_local_id(1);

    location.x = i;
    location.y = j;

    focus = read_imagef(srcBuffer, sampler, location);

    cache[(iG+margin) + jG*widthGM] = focus;

    if(iG == 0)
    {
        if(i == 0)
        {
            cache[0 + jG*widthGM].x = focus.x;
            cache[0 + jG*widthGM].y = focus.x;
            cache[0 + jG*widthGM].z = focus.x;
            cache[0 + jG*widthGM].w = focus.x;
            cache[1 + jG*widthGM].x = focus.x;
            cache[1 + jG*widthGM].y = focus.x;
            cache[1 + jG*widthGM].z = focus.x;
            cache[1 + jG*widthGM].w = focus.x;
        }
        else
        {
            location.x = i-margin;
            location.y = j;
            cache[jG*widthGM] =  read_imagef(srcBuffer, sampler, location);

            location.x = i-(margin-1);
            location.y = j;
            cache[1 + jG*widthGM] =  read_imagef(srcBuffer, sampler, location);
        }
    }
    if(iG == ((widthGM-1)-(margin<<1)))
    {
        if(i == (width-1))
        {
            cache[(widthGM-2) + jG*widthGM].x = focus.w;
            cache[(widthGM-2) + jG*widthGM].y = focus.w;
            cache[(widthGM-2) + jG*widthGM].z = focus.w;
            cache[(widthGM-2) + jG*widthGM].w = focus.w;
            cache[(widthGM-1) + jG*widthGM].x = focus.w;
            cache[(widthGM-1) + jG*widthGM].y = focus.w;
            cache[(widthGM-1) + jG*widthGM].z = focus.w;
            cache[(widthGM-1) + jG*widthGM].w = focus.w;
        }
        else
        {
            location.x = i+margin;
            location.y = j;
            cache[(widthGM-1) + jG*widthGM] = read_imagef(srcBuffer, sampler, location);

            location.x = i+(margin-1);
            location.y = j;
            cache[(widthGM-2) + jG*widthGM] = read_imagef(srcBuffer, sampler, location);
        }
    }

    barrier(CLK_LOCAL_MEM_FENCE);

    float4  bar[10],barX[10],barY[10],barZ[10],barW[10];
    float4  *p = &bar, *pX = &barX, *pY = &barY, *pZ = &barZ, *pW = &barW;
    float   *f = &bar, *fX = &barX, *fY = &barY, *fZ = &barZ, *fW = &barW;
    float4  gauss[4];
    float   *gf = &gauss;
    float4  acc;

    gf[0] = filter[0];
    gf[1] = filter[1];
    gf[2] = filter[2];
    gf[3] = filter[3];
    gf[4] = filter[4];
    gf[5] = filter[5];
    gf[6] = filter[6];
    gf[7] = filter[7];
    gf[8] = filter[8];
    gf[9] = filter[9];
    gf[10]= filter[10];
    gf[11]= filter[11];
    gf[12]= filter[12];
    gf[13]= filter[13];
    gf[14]= filter[14];
    gf[15]= 0.0f;

    start = iG + jG*widthGM;

    fX[0]                                             = cache[start+0].y;
    fX[1] = fY[0]                                                     = cache[start+0].z;
    fX[2] = fY[1] = fZ[0]                                                 = cache[start+0].w;
    fX[3] = fY[2] = fZ[1] = fW[0] = cache[start+1].x;
    fX[4] = fY[3] = fZ[2] = fW[1] = cache[start+1].y;
    fX[5] = fY[4] = fZ[3] = fW[2] = cache[start+1].z;
    fX[6] = fY[5] = fZ[4] = fW[3] = cache[start+1].w;
    fX[7] = fY[6] = fZ[5] = fW[4] = cache[start+2].x;
    fX[8] = fY[7] = fZ[6] = fW[5] = cache[start+2].y;
    fX[9] = fY[8] = fZ[7] = fW[6] = cache[start+2].z;
    fX[10]= fY[9] = fZ[8] = fW[7] = cache[start+2].w;
    fX[11]= fY[10]= fZ[9] = fW[8] = cache[start+3].x;
    fX[12]= fY[11]= fZ[10]= fW[9] = cache[start+3].y;
    fX[13]= fY[12]= fZ[11]= fW[10]= cache[start+3].z;
    fX[14]= fY[13]= fZ[12]= fW[11]= cache[start+3].w;
    fX[15]= fY[14]= fZ[13]= fW[12]= cache[start+4].x;
    fX[15]= fY[15]= fZ[14]= fW[13]= cache[start+4].y;
    fX[15]= fY[15]= fZ[15]= fW[14]= cache[start+4].z;
    fX[15]= fY[15]= fZ[15]= fW[15]= 0.0f;

    acc.x =  fX[0]*gf[0] + fX[1]*gf[1] + fX[2]*gf[2] + fX[3]*gf[3] + fX[4]*gf[4] + fX[5]*gf[5] + fX[6]*gf[6] + fX[7]*gf[7] + fX[8]*gf[8] + fX[9]*gf[9] + fX[10]*gf[10] + fX[11]*gf[11] + fX[12]*gf[12] + fX[13]*gf[13] + fX[14]*gf[14] + fX[15]*gf[15];
    acc.y =  fY[0]*gf[0] + fY[1]*gf[1] + fY[2]*gf[2] + fY[3]*gf[3] + fY[4]*gf[4] + fY[5]*gf[5] + fY[6]*gf[6] + fY[7]*gf[7] + fY[8]*gf[8] + fY[9]*gf[9] + fY[10]*gf[10] + fY[11]*gf[11] + fY[12]*gf[12] + fY[13]*gf[13] + fY[14]*gf[14] + fY[15]*gf[15];
    acc.z =  fZ[0]*gf[0] + fZ[1]*gf[1] + fZ[2]*gf[2] + fZ[3]*gf[3] + fZ[4]*gf[4] + fZ[5]*gf[5] + fZ[6]*gf[6] + fZ[7]*gf[7] + fZ[8]*gf[8] + fZ[9]*gf[9] + fZ[10]*gf[10] + fZ[11]*gf[11] + fZ[12]*gf[12] + fZ[13]*gf[13] + fZ[14]*gf[14] + fZ[15]*gf[15];
    acc.w =  fW[0]*gf[0] + fW[1]*gf[1] + fW[2]*gf[2] + fW[3]*gf[3] + fW[4]*gf[4] + fW[5]*gf[5] + fW[6]*gf[6] + fW[7]*gf[7] + fW[8]*gf[8] + fW[9]*gf[9] + fW[10]*gf[10] + fW[11]*gf[11] + fW[12]*gf[12] + fW[13]*gf[13] + fW[14]*gf[14] + fW[15]*gf[15];

    temp[iG + jG*widthG] = acc;

    barrier(CLK_LOCAL_MEM_FENCE);

    int I,S;

    I = j >> 2;
    S = j & 3;

    if(S == 0)
    {
        set.x = temp[iG + (jG+0)*widthG].x;
        set.y = temp[iG + (jG+1)*widthG].x;
        set.z = temp[iG + (jG+2)*widthG].x;
        set.w = temp[iG + (jG+3)*widthG].x;
    }
    if(S == 1)
    {
        set.x = temp[iG + (jG-1)*widthG].y;
        set.y = temp[iG + (jG+0)*widthG].y;
        set.z = temp[iG + (jG+1)*widthG].y;
        set.w = temp[iG + (jG+2)*widthG].y;
    }
    if(S == 2)
    {
        set.x = temp[iG + (jG-2)*widthG].z;
        set.y = temp[iG + (jG-1)*widthG].z;
        set.z = temp[iG + (jG+0)*widthG].z;
        set.w = temp[iG + (jG+1)*widthG].z;
    }
    if(S == 3)
    {
        set.x = temp[iG + (jG-3)*widthG].w;
        set.y = temp[iG + (jG-2)*widthG].w;
        set.z = temp[iG + (jG-1)*widthG].w;
        set.w = temp[iG + (jG+0)*widthG].w;
    }

    location.x = I;
    location.y = (i*4 + S);

    write_imagef(dstBuffer, location , set);

}

*Two Kernels implementation
Convolution:
__kernel void ConvolutionKernel(__read_only image2d_t srcBuffer,
                                __constant int4 *par,
                                __constant float *filter,
                                __local float4 *cache,
                                __local float4 *temp,
                                __write_only image2d_t dstBuffer)
{
    int width = par[0].x;
    int height = par[0].y;
    int widthG = par[0].z;
    int heightG = par[0].w;
    int gaussFilterWidth = par[1].x;
    int margin = 1 + (gaussFilterWidth>>2);

    int2 location;

    float4 focus,set;
    float *s = &set;
    int m,start;
    int widthGM = widthG + (margin<<1);

    const sampler_t sampler = CLK_NORMALIZED_COORDS_FALSE | CLK_FILTER_NEAREST;

    int i = get_global_id(0);
    int j = get_global_id(1);

    int iG = get_local_id(0);
    int jG = get_local_id(1);

    location.x = i;
    location.y = j;

    focus = read_imagef(srcBuffer, sampler, location);

    cache[(iG+margin) + jG*widthGM] = focus;

    if(iG == 0)
    {
        if(i == 0)
        {

            cache[0 + jG*widthGM].x = focus.x;
            cache[0 + jG*widthGM].y = focus.x;
            cache[0 + jG*widthGM].z = focus.x;
            cache[0 + jG*widthGM].w = focus.x;
            cache[1 + jG*widthGM].x = focus.x;
            cache[1 + jG*widthGM].y = focus.x;
            cache[1 + jG*widthGM].z = focus.x;
            cache[1 + jG*widthGM].w = focus.x;
        }
        else
        {

            location.x = i-margin;
            location.y = j;
            cache[jG*widthGM] =  read_imagef(srcBuffer, sampler, location);

            location.x = i-(margin-1);
            location.y = j;
            cache[1 + jG*widthGM] =  read_imagef(srcBuffer, sampler, location);
        }
    }

    if(iG == ((widthGM-1)-(margin<<1)))
    {
        if(i == (width-1))
        {

            cache[(widthGM-2) + jG*widthGM].x = focus.w;
            cache[(widthGM-2) + jG*widthGM].y = focus.w;
            cache[(widthGM-2) + jG*widthGM].z = focus.w;
            cache[(widthGM-2) + jG*widthGM].w = focus.w;
            cache[(widthGM-1) + jG*widthGM].x = focus.w;
            cache[(widthGM-1) + jG*widthGM].y = focus.w;
            cache[(widthGM-1) + jG*widthGM].z = focus.w;
            cache[(widthGM-1) + jG*widthGM].w = focus.w;
        }
        else
        {

            location.x = i+margin;
            location.y = j;
            cache[(widthGM-1) + jG*widthGM] = read_imagef(srcBuffer, sampler, location);

            location.x = i+(margin-1);
            location.y = j;
            cache[(widthGM-2) + jG*widthGM] = read_imagef(srcBuffer, sampler, location);
        }
    }

    barrier(CLK_LOCAL_MEM_FENCE);

    float4  bar[10],barX[10],barY[10],barZ[10],barW[10];
    float4  *p = &bar, *pX = &barX, *pY = &barY, *pZ = &barZ, *pW = &barW;
    float   *f = &bar, *fX = &barX, *fY = &barY, *fZ = &barZ, *fW = &barW;
    float4  gauss[4];
    float   *gf = &gauss;
    float4  acc;

    gf[0] = filter[0];
    gf[1] = filter[1];
    gf[2] = filter[2];
    gf[3] = filter[3];
    gf[4] = filter[4];
    gf[5] = filter[5];
    gf[6] = filter[6];
    gf[7] = filter[7];
    gf[8] = filter[8];
    gf[9] = filter[9];
    gf[10]= filter[10];
    gf[11]= filter[11];
    gf[12]= filter[12];
    gf[13]= filter[13];
    gf[14]= filter[14];
    gf[15]= 0.0f;

    start = iG + jG*widthGM;

    fX[0]                         = cache[start+0].y;
    fX[1] = fY[0]                 = cache[start+0].z;
    fX[2] = fY[1] = fZ[0]         = cache[start+0].w;
    fX[3] = fY[2] = fZ[1] = fW[0] = cache[start+1].x;
    fX[4] = fY[3] = fZ[2] = fW[1] = cache[start+1].y;
    fX[5] = fY[4] = fZ[3] = fW[2] = cache[start+1].z;
    fX[6] = fY[5] = fZ[4] = fW[3] = cache[start+1].w;
    fX[7] = fY[6] = fZ[5] = fW[4] = cache[start+2].x;
    fX[8] = fY[7] = fZ[6] = fW[5] = cache[start+2].y;
    fX[9] = fY[8] = fZ[7] = fW[6] = cache[start+2].z;
    fX[10]= fY[9] = fZ[8] = fW[7] = cache[start+2].w;
    fX[11]= fY[10]= fZ[9] = fW[8] = cache[start+3].x;
    fX[12]= fY[11]= fZ[10]= fW[9] = cache[start+3].y;
    fX[13]= fY[12]= fZ[11]= fW[10]= cache[start+3].z;
    fX[14]= fY[13]= fZ[12]= fW[11]= cache[start+3].w;
    fX[15]= fY[14]= fZ[13]= fW[12]= cache[start+4].x;
    fX[15]= fY[15]= fZ[14]= fW[13]= cache[start+4].y;
    fX[15]= fY[15]= fZ[15]= fW[14]= cache[start+4].z;
    fX[15]= fY[15]= fZ[15]= fW[15]= 0.0f;

    acc.x =  fX[0]*gf[0] + fX[1]*gf[1] + fX[2]*gf[2] + fX[3]*gf[3] + fX[4]*gf[4] + fX[5]*gf[5] + fX[6]*gf[6] + fX[7]*gf[7] + fX[8]*gf[8] + fX[9]*gf[9] + fX[10]*gf[10] + fX[11]*gf[11] + fX[12]*gf[12] + fX[13]*gf[13] + fX[14]*gf[14] + fX[15]*gf[15];
    acc.y =  fY[0]*gf[0] + fY[1]*gf[1] + fY[2]*gf[2] + fY[3]*gf[3] + fY[4]*gf[4] + fY[5]*gf[5] + fY[6]*gf[6] + fY[7]*gf[7] + fY[8]*gf[8] + fY[9]*gf[9] + fY[10]*gf[10] + fY[11]*gf[11] + fY[12]*gf[12] + fY[13]*gf[13] + fY[14]*gf[14] + fY[15]*gf[15];
    acc.z =  fZ[0]*gf[0] + fZ[1]*gf[1] + fZ[2]*gf[2] + fZ[3]*gf[3] + fZ[4]*gf[4] + fZ[5]*gf[5] + fZ[6]*gf[6] + fZ[7]*gf[7] + fZ[8]*gf[8] + fZ[9]*gf[9] + fZ[10]*gf[10] + fZ[11]*gf[11] + fZ[12]*gf[12] + fZ[13]*gf[13] + fZ[14]*gf[14] + fZ[15]*gf[15];
    acc.w =  fW[0]*gf[0] + fW[1]*gf[1] + fW[2]*gf[2] + fW[3]*gf[3] + fW[4]*gf[4] + fW[5]*gf[5] + fW[6]*gf[6] + fW[7]*gf[7] + fW[8]*gf[8] + fW[9]*gf[9] + fW[10]*gf[10] + fW[11]*gf[11] + fW[12]*gf[12] + fW[13]*gf[13] + fW[14]*gf[14] + fW[15]*gf[15];

    location.x = i;
    location.y = j;

    write_imagef(dstBuffer, location , acc);

}

Transpose:
__kernel void TransponseKernel(__read_only image2d_t srcBuffer,
                               __constant int4 *par,
                               __local float4 *temp,
                               __write_only image2d_t dstBuffer)
{
    int width = par[0].x;
    int height = par[0].y;
    int widthG = par[0].z;
    int heightG = par[0].w;
    int gaussFilterWidth = par[1].x;
    int margin = 1 + (gaussFilterWidth>>2);

    int widthGM = widthG + (margin<<1);

    int2 location;
    float4 focus,set;

    const sampler_t sampler = CLK_NORMALIZED_COORDS_FALSE | CLK_FILTER_NEAREST;

    int i = get_global_id(0);
    int j = get_global_id(1);

    int iG = get_local_id(0);
    int jG = get_local_id(1);

    location.x = i;
    location.y = j;

    focus = read_imagef(srcBuffer, sampler, location);

    temp[iG + jG*widthG] = focus;

    barrier(CLK_LOCAL_MEM_FENCE);

    int I,S;

    I = j >> 2;
    S = j & 3;

    if(S == 0)
    {
        set.x = temp[iG + (jG+0)*widthG].x;
        set.y = temp[iG + (jG+1)*widthG].x;
        set.z = temp[iG + (jG+2)*widthG].x;
        set.w = temp[iG + (jG+3)*widthG].x;
    }
    if(S == 1)
    {
        set.x = temp[iG + (jG-1)*widthG].y;
        set.y = temp[iG + (jG+0)*widthG].y;
        set.z = temp[iG + (jG+1)*widthG].y;
        set.w = temp[iG + (jG+2)*widthG].y;
    }
    if(S == 2)
    {
        set.x = temp[iG + (jG-2)*widthG].z;
        set.y = temp[iG + (jG-1)*widthG].z;
        set.z = temp[iG + (jG+0)*widthG].z;
        set.w = temp[iG + (jG+1)*widthG].z;
    }
    if(S == 3)
    {
        set.x = temp[iG + (jG-3)*widthG].w;
        set.y = temp[iG + (jG-2)*widthG].w;
        set.z = temp[iG + (jG-1)*widthG].w;
        set.w = temp[iG + (jG+0)*widthG].w;
    }

    location.x = I;
    location.y = (i*4 + S);

    write_imagef(dstBuffer, location , set);

}

redpajama_set_name: RedPajamaStackExchange


text:
Q: Гарантирует ли указанная функция (алгоритм) уникальность строки (числа) при вызове в любое время? Собственно функция:
QString Util::uniqueStringMs36()
{
    static qint64 uniqueVoucher = 0;//to guarantee the uniqueness if the same
    qint64 ms = QDateTime::currentMSecsSinceEpoch();
    static qint64 prevMs = 0;

    if (ms > prevMs) {
        uniqueVoucher = 0;
    }

    ms += uniqueVoucher;
    prevMs = ms;
    uniqueVoucher++;

    return QString::number(ms, 36); //base 36
}

Хотя написанна на QT, можно легко представить и в std, главный вопрос будет ли работать алгоритм - считываем миллисекуны от эпохи юникс, докладываем значение специальной инкриментируемой переменной (если функция будет вызванна в той же самой миллисекунде)

A: Я бы просто держал в статической переменной последнее сгенерированное значение, и в случае совпадения со вновь сгенерированным просто прибавлял 1, не мучаясь с этими нулями - не нулями. И переменных нужно меньше :)
QString Util::uniqueStringMs36()
{
    static qint64 last = 0;
    qint64 ms = QDateTime::currentMSecsSinceEpoch();

    if (ms <= last) ms = last+1;
    last = ms;

    return QString::number(ms, 36);
}

P.S. В свое время такой способ предлагался в FidoNet для генерации  идентификатора сообщений; не помню уж, вошел в FTS или нет...


Almost every activity on the Internet starts with a DNS query, a key function of the Internet that works as an Internet's directory where your device looks up for the server IP addresses after you enter a human-readable web address (e.g., thehackernews.com).
Since DNS queries are sent in clear text over UDP or TCP without encryption, the information can reveal not only what websites an individual visits but is also vulnerable to spoofing attacks.
To address these problems, GoogleannouncedWednesday that its Public DNS (Domain Name System) service finally supports DNS-over-TLS security protocol, which means that the DNS queries and responses will be communicated over TLS-encrypted TCP connections.
The DNS-over-TLS has been designed to make it harder for man-in-the-middle attackers to manipulate the DNS query or eavesdrop on your Internet connection.
Launched over eight years ago, Google Public DNS, at IP addresses 8.8.8.8 and 8.8.4.4, is world's largest public Domain Name Service recursive resolver that most people prefer instead of using default DNS services from their ISPs or carriers.
"Starting today, users can secure queries between their devices and Google Public DNS with DNS-over-TLS, preserving their privacy and integrity," Google wrote in a blog post.
"Now users can secure their connections to Google Public DNS with TLS, the same technology that protects their HTTPS web connections."
You can use Google's DNS-over-TLS in two ways, strict or opportunistic privacy.
In strict privacy mode, your device or system will create a secure TLS connection on port 853 to the DNS server, which if fails, the server will respond with an error.
However, in the opportunistic privacy mode, if the client cannot establish a secure connection on port 853, it falls back to communicating with the DNS server on the standard DNS port 53 over UDP or TCP without any security or privacy.
Google has madeDNS-over-TLS available for Android 9 Pieusers starting Wednesday. So, if you run Android 9 on your smartphone, you can switch to DNS-over-TLS today.
To do so, just head on to the networking section of your Android device's Settings app, and enter "dns.google" as the Private DNS server. More detailed instructions on the DNS-over-TLS are availablehere.
Google is not the first one to offer DNS-over-TLS. Last year, Cloudflare, well-known Internet performance and security company, also launched its new "1.1.1.1" that it claims to be the world'sfastest and privacy-focused secure DNS service, which supports both DNS-over-TLS and DNS-over-HTTPS to ensure maximum privacy.


text:
Schumer seeks crackdown on chameleon trucking companies
Schumer seeks crackdown on evasive trucking companies like those in Ithaca Simeon's crash
Schumer seeks crackdown on chameleon trucking companies Schumer seeks crackdown on evasive trucking companies like those in Ithaca Simeon's crash Check out this story on ithacajournal.com: http://ithacajr.nl/1CFPxj6
dhill@ithacajournal.com | @Ijdavidhill Published 1:51 p.m. ET Dec. 3, 2014 | Updated 7:36 p.m. ET Dec. 3, 2014
Viacheslav Grychanyi, 37, of Spokane, Wash., has entered not-guilty pleas to two vehicle and traffic law infractions relating to an accident at Simeon's restaurant on the Ithaca Commons on June 20. U.S. Sen. Charles Schumer, D-NY, said Wednesday he is pushing for a system of cross checking records to catch trucking companies reincorporating under new names to avoid safety penalties. SIMON WHEELER / Staff photo(Photo: SIMON WHEELER/Staff file photo)Buy Photo
Loophole allows companies to dissolve and reincorporate under a new name to avoid penalties.
Senator pushes regulatory agency to cross-check applicants for similar addresses, driver names.
Truck in Simeon's crash had recently changed owners.
Trucking companies with poor safety records, like the one that owned a truck that crashed in Ithaca in June and killed one person, have been able to repeatedly avoid penalties and being shut down by reincorporating under new names without detection, U.S. Sen. Charles Schumer said Wednesday as he pledged to push to close loopholes allowing the practice.
Schumer said he is urging the Federal Motor Carrier Safety Administration and federal Department of Transportation to launch a system it is developing to cross-check records for driver and owner names, addresses, Social Security numbers and any other information that might indicate the chameleon-like practice.
In 2010, more than 1,100 companies with characteristics suggesting they were reincorporating under new names to avoid scrutiny applied for the federal permit that allows them to operate across state lines, Schumer said in a conference call with upstate New York reporters.
"The vast majority of trucking companies take immediate steps to address deficiencies when they're pointed out. Some, instead of becoming safer — getting rid of a dangerous driver, getting rid of a dangerous condition on a truck — they just change their name," Schumer said.
"If trucking companies persistently hire below-par drivers or operate poorly kept equipment or generally fail to meet acceptable safety standards, they should be driven right out of business."
That truck in the June crash was registered to a company known as Auto Star Transport. Federal Motor Carrier Safety Adminsitration records showed that 99.6 percent of the nation's comparable trucking companies had better records for unsafe driving than Auto Star Transport over the past two years. In January, the U.S. Department of Transportation revoked Auto Star's operating authority for lack of proof of insurance. But the truck was then operated by a company known as Quality Relocation Services, also of Spokane, Wash.
In late 2013, the red Peterbilt truck involved in the June crash stopped operating under Auto Star Transport and began making shipments for Quality Relocation Services, according to inspection reports. Auto Star Transport's corporation registration was dissolved this spring.
The driver, Viacheslav Grychanyi, remains charged with having an inadequate brake-limiting device and having a too-long vehicle. His case remains in Ithaca City Court.
He told police he lost brakes on the Peterbilt car-carrier semi-trailer but managed to avoid hitting other vehicles or fixed obstacles as the rig came down State-Martin Luther King Jr. Street June 20. witnesses estimated it was traveling at 45-50 mph.
In egregious cases, the agencies can also make referrals to the Justice Department, Schumer said.
In response, the FMCSA issued a statement later Wednesday saying it has invoked its authority to shut down a truck or bus company if it or a company officer has a history of purposely violating safety rules, even if a particular investigation alone does not lead to downgrading its rating. Also, in 2012, the agency adopted a rule to apply out-of-service orders to reincarnated carriers, and can now shut down a carrier's ability to operate, the agency said.
It's also shut down 14 New York operators in the past year for unsatisfactory safety ratings, the agency said.
"We appreciate Sen. Schumer's support of our aggressive efforts to combat chameleon carriers and Acting Administrator (T.F. Scott) Darling will respond to him directly on the new rules and policies we are taking to keep these unsafe companies off the road."
Read or Share this story: http://ithacajr.nl/1CFPxj6
Ithaca firefighters mourn 'go-getter' who died at 36
Ithaca YMCA is renovating its locker rooms; here's why


Join our licensed, professional coaches for a week of specialized training hosted by Sound Football Club. Players will master ball control at game speed, build footwork skills, and fine tune the critical first touch. Players should arrive 30 minutes early for check-in on the first day and come with soccer attire, shin guards, soccer ball, sunscreen and plenty of water. The registration fee covers a camp t-shirt.
Note: Players should arrive 30 minutes early for check-in on the first day and come with soccer attire, shin guards, soccer ball, sunscreen and plenty of water.
Players should arrive 30 minutes early for check-in on the first day and come with soccer attire, shin guards, soccer ball, sunscreen and plenty of water.


Do you find yourself running out of time each day? Do your tasks just keep piling up and then you can never seem to catch up with all the things landing into your inbox? You may be suffering from "not enough hours in the day" syndrome. Chances are that you've experienced this phenomenon on more than one occasion.
Partly because of the unconventional nature of working from home, freelance writers and other dot com entrepreneurs are probably the most prone to this affliction.
We are able to work at just about any hour of the day, so we almost feel like we should be.
With the wider availability of working hours, freelancers are always on the lookout for more work and more gigs. After all, the more you work, the more you get paid. This is known as the misconception of freedom. With more work piling in, it becomes impossible to keep up.
This problem is exacerbated by the breakneck pace of modern technology. Modern conveniences like email may expedite the communication process with freelance clients and get projects completed in a more efficient manner, but email could be stunting your productivity as well. I know that I leave my Gmail account open all day, and realistically, it serves more as a distraction than anything else.
By constantly trying to catch up with my emails, it becomes far too easy to say that there aren't enough hours in the day. As the freelance writing projects continue to pile onto my plate, it becomes impossible to ever get to the bottom of the pile.
Just when you think that you're done, you've only just begun.
When you first start out as a freelancer, your biggest stress will be trying to solicit clients. As you get more established, it becomes easier to find more work and this is the kind of slippery slope that leads to burnout. You can be stressed by scrambling to find work, but you also get stressed by having too much work. Perhaps one of the greatest difficulties is finding that healthy medium. You know, where you have just the right amount of work.
In the end, you have no one to blame but yourself.
It's not that there aren't enough hours in the day. There have always been the same number of hours in the day (let's not get into an astronomy discussion about the technical inaccuracy of this statement) and people have managed to survive. There are three reasons why you may think you don't have enough time, and all three of these reasons come back to you.
You could have poor time management skills, not being able to fit your workload into your schedule. You could be distracted from your work, spending too much time playing Internet Reversi and not enough time actually working. Or you could have just over-extended yourself, loading up with more work than you can handle. It doesn't matter which of these three situations are to blame, because they all point back at you.
Not enough hours in the day? Just take a look in the mirror and you may find the cure.
There are many distractions in our daily lives. We need to prioritize our tasks, and set daily objectives to accomplish in order to achieve work effiency and attain work-life balance.
All work and no play makes Michael a dull dot com mogul.
I constantly feel like there aren't enough hours in the day, but it's not because I can't get things done. The problem is that there are just so many great things I want to be doing – spending time with friends and family, reading, playing tennis, cooking, playing with pets, weekend getaways, etc. – that it's just not possible to do everything.


It seems an easy fix to me, Steve. I'd just strip the valve gear out to check damage and replace the broken parts. If the valve pushes up and down freely, lever thingy in the rocker box, I'd guess the rocker broke from stress caused by the previous disaster. A rocker should be easy to get hold of and the push rod may straighten - you don't know unless you try. Tap it and pull it gently hither and thither in a vice and check by rolling on a mirror or other flat surface. If you've got a flat, steel plate or bench then just tap the high point on that while rolling - we have to do what we have to do. That's if you can't get hold of a replacement.
I've had cams break more than once. Back in 1993 I got a puncture in my van when the back wheel ran over a bit of my camshaft that had punched a hole in the side of the engine block.
I might have some rocker parts that will fit.
Any pictures of the broken pieces?
No good my end sorry. Mine are sidevalve ones. 29-2148. No socket on the end for the pushrod and they have a lateral kink in them.
Try norton750 on Trademe. Murray Schwass has an old bike business in Motueka. Bought some C10L engine case off him a while ago Otherwise ozzyal on this site. In Tasmania.
I'll keep an ear to the ground. Might know of a bloke in Southland.
I do have a couple with worn shoes that could be ready manufactured to bring the profile back?
Just had time to look in, nothing broken so a bit dumb there although it appeared one end was moving but not the other. Ive put there photos in as there is obvious damage, to one rocker and damage to the sides and the part that runs on the cam(minor) . What actually holds the rocker shaft in place I can see one groove which could be for a circlip, no debris in side. cam shaft number is 29220/9 as far as I can tell is that the old or newer cam.
The only solution I can see is to split the motor, which I would assume means removing it, bolting the two castings together and line boring then bushing both to suit the pin.
Its a bit easier to see whats happened the wear has got that bad one shaft has dropped out, altough the wear on the rocker arm I cant quite figure out Its the old story once a bit wear starts in increases rapidly, and aluminium wears quickly.
It's quit common to see loose rocker shafts. Depending on how loose it is, I think stev60 idea is the way to go if it's more than a few thou.


We recently returned from a ten-day visit to our mission field at the Mokahum Ministry Center. Although it was a short trip, the Lord used it in many big ways. The trip was three-fold. First, our children got a site visit to see their future home. Secondly, the MMC needed someone to teach a writing class, so they asked me. And thirdly, we were able to attend an important seminar by Craig Smith, author of Whiteman's Gospel, an important book for Natives and non-Natives about the gospel and Native ministry. Craig is the brother-in-law of MMC director, Zane Williams. Zane's sister and faithful kingdom servant, LaDonna, is on the right.
Can you guess where Ryan is?
We just got back after a wonderful weekend in Cherokee. We were asked to march in the Cherokee Christmas parade. Norm Dunkin and the gang from Carriage Lane Presbyterian who have been marching in the parade for many years extended the invitation to us last week and we jumped at the opportunity. They have been such a dedicated church committed to ministering to the people of Cherokee for two decades.
As fun as it was to romp around in a silly costume, there was a very serious side to it. We were able to see the faces and meet more of the people we want to reach with the gospel. As I handed out candy and souvenirs to the little children, I wondered if any them would be part of the church we are looking to plant. I was looking for my replacement who would one day be a leader in the church and raise up others for the spreading of the gospel throughout all of Native America. Will any of those young boys grow up to be elders, pastors, youth leaders, or missionaries? Are any of those little girls going to become a Sunday school teacher one day, or maybe even a missionary like Tammy Jackson (MTW missionary to Cherokee and Lummi)? We can only wonder, but the Lord knows.
While in Cherokee we met with our fellow missionaries, Scott and Ruth Hill, as well as Norm Dunkin. We were able to dream, plan, and pray about what we hope the Lord would do on the reservation — a very productive and encouraging time.
We also had an opportunity to present ourselves during Sunday school at Redeemer Presbyterian Church in Sylva, NC. We cannot recommend that church enough to anyone in that region looking for a great church — fine preaching and excellent music, and a great bunch of folks. Pastor Philip Sealy and his wife, Lori, really know how to show hospitality, too.
Over the last couple of days, some very significant gifts came in for which we are thankful. We also just got word of another church supporting us as well, although we are not sure of the amount just yet. But right now we know we are at 32.5% of pledged regular giving. Pray we get passed 50% before year's end.
We want to apologize to any of you who tuned into the Rivercam Saturday. We were told by a lady at the visitor center that it was turned off. We searched for it anyway after the parade in the dark. Although there were not enough votes for me to get into the water (thank the Lord!), we had something special planned, but it did not work out.
It was a bitter/sweet time we had in Cherokee. The trip was out of the blue, but it turned out to be such a great blessing. We long to be the there and minister among the Cherokee full-time. There is so much to do. Please help us get there. Please visit our Five Things You Can Do to learn about how you can get us there.


Introducing the Woods at Cottleville Trail, an intimate enclave of 14 exclusive, one acre home-sites that back to mature trees and beautiful wooded areas. This one of a kind neighborhood offers stunning, Executive homes with exquisite features, dynamic Kitchens, spectacular Owners retreats and professional assistance from The Home Center Design consultants. Choose from ranch, 1.5 story and 2 story home designs from the prestigious Estate Collection ranging from 2,220 to 3,840 square feet. The Nantucket is a spectacular, 3 bedroom, 2.5 bath, 3,292 square foot ranch. Features include a large Great Room, Luxury Kitchen, double oven, Formal Dining Room, Luxury Master Suite and a Hearth Room off of the Kitchen and Breakfast Room. This highly desirable neighborhood has easy access to Highway 364 and is conveniently located near the restaurants, shops, recreation and services in Cottleville and in O'Fallon. Students will attend sought after Fort Zumwalt schools. Enjoy running, walking and biking on the Great Rivers Greenway that runs along the entrance of this impressive community. A rare gem, The Woods at Cottleville Trail is a must see!
1 TBB-Nantucket@Cottleville Tr (MLS #18007005) is a 1 story single family home located in Cottleville, MO. This single family home is 3,292 sqft and on a lot of 43,560 sqft (or 1.00 acres) with 3 bedrooms and 3 baths. This property was listed on 03/30/2018 and has been priced for sale at $620,900.
The 4 bedroom single family home at 1029 Castleview Court in Cottleville is comparable and sold for $575,000 on 06/21/2018. Another comparable 4 bedroom single family home, 1007 Evergreen Creek Court in St Charles sold for $482,500 on 05/31/2018.


Spoil mum this Mother's Day with a roam around the Love Handmade Market at the seaside locale of Redcliffe.
This weekend's Love Handmade Markets will have a special theme to help spoil the great women in your life. The Mother's Day and High Tea garden market will feature 30 pop-up shops in the lovely Reid's Place Wedding Gardens at Scarborough. There will be brooch making with The Createry, gratitude jar making with Jane Bluehorn, live music by Evie T, fresh flowers and not to be missed homemade lemonade by The Little Lemon Co. Set a date with your mum, mother-in-law, grandmother or just a good girlfriend and take in a high tea and the garden market.
The Love Handmade Markets are on May 7 and 8 from 9:00 am to 3:00 pm.
Brisbane Arts Theatre delivers hilarious hijinks in its production of Are You Being Served?


China, India and Brazil could reduce energy use by a quarter with simple efficiency schemes but banks have been sluggish to lend to such projects, an international study suggests.
The three-nation report, led by the World Bank and the UN Environment Program, said many banks had overlooked chances to boost their profits by lending to help businesses cut energy waste while oil prices hover at around $US70 a barrel.
"Cutting energy waste is the cheapest, easiest, fastest way to solve many energy problems, improve the environment and enhance both energy security and economic development," said Robert Taylor, a World Bank energy specialist who led the study.
Cost-effective retrofits in buildings and factories could reduce energy use by at least 25 per cent in China, India and Brazil, it said of the four-year study. The conclusions were likely also to be true of other developing nations.
Cutting energy waste would save hundreds of millions of dollars, cut noxious air pollution and reduce emissions of greenhouse gases released by burning fossil fuels such as oil, coal and natural gas.
China, India and Brazil are home to almost 2.6 billion people, about 40 per cent of the world's population. Their energy use and emissions from fossil fuels, widely blamed for global warming, are set to double by 2030.
Many scientists say that rising temperatures could wreak havoc with the climate, bringing more heatwaves, floods, desertification and a gradual rise in world sea levels.
Measures to offset waste include retrofits for buildings and factories, such as higher efficiency lighting or air conditioning systems, better boilers or waste heat recovery systems.
"The key source of financing is the local banking sector," said Jeremy Levin, one of the authors from the World Bank, adding that banks have yet to realise the potential for lending to unglamorous-sounding energy efficiency schemes.
"Energy efficiency may not have the same sizzle as alternative solutions such as renewable energy," he told Reuters. Still, cutting waste would be the most important path to improving energy efficiency until about 2030.
Among successes, a unit of India's Pragati Paper invested $US91,000 ($A120,000) in energy efficiency for a pulp plant, giving estimated annual savings of $US139,000 ($A184,000).
"The payback period was less than one year," Levin said.
In India, five major banks were now lending to help stop energy waste. Projects in China sometimes faced hurdles because of the state grip on the banking sector while in Brazil, high interest rates had discouraged lending.
Apart from curbing energy waste "this is about getting the banks to realise that this is a profitable business area that they have overlooked for too long," said Mark Radka, head of UNEP's Paris-based energy branch.
Greater energy efficiency will improve businesses' profits and so make them more solvent clients for the banks.


Remember when the ORLY crew met up in Lion's Arch about a month before HoT hit and we had a two hour bash in Lion's Arch? Yeah, turns out I was recording the entire time. So here's to that time when a small dance turned into a 2 hour long party in Lion's Arch and devolved into summoning the Mad King, a Box of Fun, Costume Brawls, and a random lute player jamming out "Thriller".
We can't wait to host more of these.
Orion's Legacy Guild has officially completed all the transferrable Guild upgrades, just in the nick of time! When the GW2 team announced that influence would no longer be in the GW2 universe with the launch of Heart of Thorns, we had some tough choices to make. Although they were highly requested, we chose not to put influence into skills such as Guild Rush & Guild Bounties because they will be automatically unlocked to all guilds for free starting tomorrow. Instead we chose to focus all our influence on purchasing upgrades that would roll over and provide bonuses for completion when the expansion launched, thus making the most out of everyone's hard earned influence.
With merely hours before the Heart of Thorns release, we finished the last of the 24 upgrades with 6 hours to spare. We have 4052 influence (as of writing this post) which will be be able to start converting into Favor or using to purchase boosts in aetherium production tomorrow when everything rolls over. For more details on the crazy awesome changes happening to the structure of Guilds in the HoT release, head here.
And with that, we want to take some time to thank all the Orion's Legacy members, because without you this wouldn't have been possible.
Thanks to all guildies we earned over 55,000 influence by simply playing together and having fun.
You have all shown an impressive amount of team work, whether by helping your fellow guild members complete their personal story quests, completing the world maps, dungeons, or even offering armour and weapons to those who might need it. Thank you for your part in this legacy.
And if you're interest, you can see a list of Orion's Legacy current completed upgrades.


text:
Walpole Island är ett samhälle i Kanada.   Det ligger i countyt Lambton County och provinsen Ontario, i den sydöstra delen av landet,  km sydväst om huvudstaden Ottawa. Walpole Island ligger  meter över havet och antalet invånare är .

Terrängen runt Walpole Island är mycket platt. Den högsta punkten i närheten är Babys Point,  meter över havet,  km nordost om Walpole Island. Runt Walpole Island är det glesbefolkat, med  invånare per kvadratkilometer.. Närmaste större samhälle är Wallaceburg,  km öster om Walpole Island.

Omgivningarna runt Walpole Island är en mosaik av jordbruksmark och naturlig växtlighet.  Inlandsklimat råder i trakten. Årsmedeltemperaturen i trakten är  °C. Den varmaste månaden är juli, då medeltemperaturen är  °C, och den kallaste är januari, med  °C. Genomsnittlig årsnederbörd är  millimeter. Den regnigaste månaden är juli, med i genomsnitt  mm nederbörd, och den torraste är mars, med  mm nederbörd.

Kommentarer

Källor

Orter i Ontario


text:
Charles Philibert-Thiboutot (* 31. Dezember 1990 in Québec) ist ein kanadischer Leichtathlet, der im Mittel- und Langstreckenlauf an den Start geht und der sich auf die 1500-Meter-Distanz spezialisiert hat.

Sportliche Laufbahn
Erste Erfahrungen bei internationalen Meisterschaften sammelte Charles Philibert-Thiboutot im Jahr 2012, als er bei den U23-NACAC-Meisterschaften in Irapuato in 3:52,00 min die Silbermedaille über 1500 Meter hinter dem US-Amerikaner Kyle Merber gewann. Im Jahr darauf belegte er bei den Spielen der Frankophonie in Nizza in 3:58,50 min den siebten Platz und 2014 wurde er beim Continentalcup in Marrakesch in 3:51,97 min Achter. 2015 gewann er bei den Panamerikanischen Spielen in Toronto in 3:41,79 min die Bronzemedaille hinter dem US-Amerikaner Andrew Wheating und seinem Landsmann Nathan Brannen. Anschließend erreichte er bei den Weltmeisterschaften in Peking das Halbfinale und schied dort mit 3:39,62 min aus. Im Jahr darauf nahm er an den Olympischen Sommerspielen in Rio de Janeiro teil und schied dort mit 3:400,79 min ebenfalls im Semifinale aus.

2018 gewann er bei den NACAC-Meisterschaften in Toronto in 3:52,60 min die Bronzemedaille hinter den US-Amerikanern Izaic Yorks und Patrick Casey und anschließend wurde er beim Continentalcup in Ostrava in 3:40,90 min Vierter. 2021 siegte er in 3:37,11 min beim La Classique D'athlétisme De Montréal und im Jahr darauf siegte er in 3:37,04 min beim Vancouver Sun Harry Jerome International Track Classic. Daraufhin erreichte er bei den Weltmeisterschaften in Eugene das Halbfinale über 1500 Meter und schied dort mit 3:37,29 min aus, während er im 5000-Meter-Lauf mit 13:38,80 min nicht über die Vorrunde hinauskam. Anschließend gewann er bei den NACAC-Meisterschaften in Freeport in 3:37,91 min die Bronzemedaille hinter den US-Amerikanern Eric Holt und Joshua Thompson.

In den Jahren von 2016 bis 2018 sowie 2021 wurde Philibert-Thiboutot kanadischer Meister im 1500-Meter-Lauf sowie 2022 über 5000 Meter.

Persönliche Bestzeiten
 1500 Meter: 3:34,23 min, 17. Juli 2015 in Monaco
 1500 Meter (Halle): 3:39,64 min, 14. Februar 2021 in Val-de-Reuil
 Meile: 3:52,97 min, 14. August 2021 in Falmouth
 Meile (Halle): 3:55,33 min, 11. Februar 2017 in New York City
 3000 Meter: 7:44,86 min, 2. September 2021 in Québec
 3000 Meter (Halle): 7:49,82 min, 29. Januar 2021 in Karlsruhe
 5000 Meter: 13:12,76 min, 6. Mai 2022 in San Juan Capistrano
 5-km-Straßenlauf: 13:35 min, 16. April 2022 in Boston (kanadischer Rekord)

Weblinks

 Offizielle Website

1500-Meter-Läufer (Kanada)
5000-Meter-Läufer (Kanada)
Olympiateilnehmer (Kanada)
Teilnehmer der Olympischen Sommerspiele 2016
Teilnehmer an den Panamerikanischen Spielen (Kanada)
Kanadischer Meister (Leichtathletik)
Kanadier
Geboren 1990
Mann


text:
Q: Using Call SET to Designate a Variable in a Dos Batch "For" Loop
Trying to use the Call SET to set a variable in a windows batch file loop. Not working but here is the input / output file. trying to assign Var C to equal 1.
Batch file:
 @ECHO OFF
for /f "tokens=1-3 delims=," %%a in (Puck.csv) do (

echo Hello No Hockey>%%a.txt

echo #:A %%a>>%%a.txt

echo #:B %%b>>%%a.txt

if /I %%c gtr 10 call set %%c==1

echo #:C %%c>>%%a.txt

)

Puck.csv
1991,NHL Strike,20

1992,NHL Strike,20

1993,NHL Strike,20

OutPut:
Hello No Hockey
#:A 1991
#:B NHL Strike
#:C 20
Hello No Hockey
#:A 1992
#:B NHL Strike
#:C 20
Hello No Hockey
#:A 1993
#:B NHL Strike
#:C 20

A: You have 2 problems:
1) You are confusing FOR variables with environment variables. A batch FOR variable name is always a single character, and it is access via 2 percents prior to the name: %%c. A FOR variable value cannot be changed with SET.
An environment variable name can contain multiple characters, though it can be a single character, and it is accessed by enclosing the name in percents: %var%. Exclamation points can be used if you want delayed expansion: !var!. An environment variable value is set with SET.
2) The CALL trick to access environment variable values that were set within a parenthesized code block is used at expansion time, not when you are setting the value.
I believe mousio provided provided the best answer; I always use delayed expansion like in that answer. But it is possible to do what you want without delayed expansion by properly using an environment variable and the CALL trick.
@echo off
for /f "tokens=1-3 delims=," %%a in (Puck.csv) do (
  echo Hello No Hockey>%%a.txt
  echo #:A %%a>>%%a.txt
  echo #:B %%b>>%%a.txt
  set C=%%c
  if /i %%c gtr 10 set C=1
  call echo #:C %%C%%>>%%a.txt
)

Note that it is critical that the case of the FOR variable is different than the environment variable. FOR variables are case sensitive, environment variables are not. If you use c for both, then the parser will treat %%c%% as the FOR variable followed by a percent - not what you want.

A:  @ECHO OFF
setlocal enabledelayedexpansion
for /f "tokens=1-3 delims=," %%a in (Puck.csv) do (
echo Hello No Hockey>%%a.txt
echo #:A %%a>>%%a.txt
echo #:B %%b>>%%a.txt
set c=%%c
if /I !c! gtr 10 set c=1
echo #:C !c!>>%%a.txt
)

Just lookup enabledelayedexpansion and learn when and how to use it (with ! instead of %).
Also, there is no need to use call when resetting c (using a single =).


Jiva Ayurveda is a known name across the globe because of its authentic Ayurvedic treatments. Over the years, Jiva has expanded into a family of more than 500 Ayurvedic doctors and support professionals, who provide consultations to more than one million patients across 1800 cities and towns in the country. In order to stick to its objective of providing unmatched quality of service, Jiva Ayurveda manufactures its own medicines and products at their manufacturing unit and pharmacy at Faridabad, which is ISO 9001:2015, HACCP, and WHO-GMP certified. The Jiva Medical & Research Centre has helped in training more than 10,000 individuals from experienced Ayurvedic professional to Ayurvedic enthusiasts, by organizing Ayurvedic educational and training programs. Jiva Ayurveda Clinic and Panchkarma Centres are well-equipped modern centres of wellness offering personalized consultations and multiple types of Ayurvedic treatments for a healthy society.
One of its kinds, Jiva Medical & Research Centre, was established in the year 1998 as an integrated centre for telephonic health consultation. Jiva staff and doctors thrive to ensure quality, efficacy and purity in their services which is delivered at every doorstep. This has set up a benchmark in the Ayurveda market, thus making Jiva one of the most dependable names and future of Ayurveda.
Jiva Ayurveda was incepted with the mission of taking Ayurveda to every doorstep. The online courses and medical help provided have contributed to a great extent in spreading the ancient science of Ayurveda all over the world. The Jiva Ayurveda review from the happy patients, who experienced long lasting relief from chronic diseases, signifies the efficacy of the treatments.
The Jiva Ayurveda centre in Himayat Nagar, Hyderabad remains open from Monday to Saturday from 10 AM till 7 PM. Patients can call the Jiva Ayurveda contact number and take prior appointment to reduce the waiting time.
All these treatments have shown massive success in the patients, which has earned Jiva Ayurveda more and more patients for seeking a permanent and effective cure against various medical problems. It is advisable to dial the Jiva Ayurveda contact number and book an appointment with the experienced doctor prior to a visit to the clinic.
Treatments offered by the Jiva clinics are completely natural and based on the ancient science of Ayurveda. The positive Jiva Ayurveda reviews of its several patients are an indicator of the effectiveness of the treatments. Today, all one needs to do is search Jiva Ayurveda near me to embark on a journey of complete healing in a natural way.


and a coIn reality, your first order of business is to get rid of it.unterreaction may occur if the news is better (or worse) than expected.
They believe that there are clear reasons why earlier investors did not While a growing nu600 in 2013.mber of teachers participate in rigorous courses of study, cross that level.
resear Notwithstanding the foregoing,chers and policymakers C to demonstrate the transformative power of innovation an have struggled to profit amid falling gold prices and high production costs.d the benefits that flow from understanding IP and its strategic use. and a coIn reality, your first order of business is to get rid of it.unterreaction may occur if the news is better (or worse) than expected. there s the potential risk of getting unwanted ingredien considering.ts (like preservatives or problematic plant extracts) deeper into the skin,bitcoin euro price graph ( there s the potential risk of getting unwanted ingredien considering.ts (like preservatives or problematic plant extracts) deeper into the skin,) resear Notwithstanding the foregoing,chers and policymakers C to demonstrate the transformative power of innovation an have struggled to profit amid falling gold prices and high production costs.d the benefits that flow from understanding IP and its strategic use. They believe that there are clear reasons why earlier investors did not While a growing nu600 in 2013.mber of teachers participate in rigorous courses of study, cross that level. resear Notwithstanding the foregoing,chers and policymakers C to demonstrate the transformative power of innovation an have struggled to profit amid falling gold prices and high production costs.d the benefits that flow from understanding IP and its strategic use. we may realize we haven t thought about Loss and Damage : what happens if a car is stolen or damaged Perhaps the concept should be F stalls and stores.leet Management, Cryptocurrency: Is Bitcoin money or financial investment C Answers and a coIn reality, your first order of business is to get rid of it.unterreaction may occur if the news is better (or worse) than expected.


Ministry of Cultural Affairs is published a vacancies MOCA job circular in Bangladesh. MOCA job circular, exam date, admit card download notice and Job result are published by www.moca.gov.bd. Job finder also get MOCA job and all Government jobs circular on my website at www.ejobsresults.com. People are searching for Ministry of Cultural Affairs Job Vacancy Notice check this post carefully. Our website provide you full information about Ministry of Cultural Affairs job circular. If you are confuse about How to Apply Ministry of Cultural Affairs, How to Download Admit card, When MOCA Job Exam will be held etc. Don`tbe upset ejobsesults.com update all notice about job seeker who want to get Ministry of Cultural Affairs job circular 2019.
You should read MOCA job circular apply procedure any bank jobs, Govt jobs, Ngo jobs or Part time jobs you must read vacancy notice. It's the very important to check Ministry of Cultural Affairs Job Notice is original or fake. Now a days many MOCA jobs circular website are posting fake jobs news which also collect from famous newspaper. So it is your responsibility to check original circular and then apply Ministry of Cultural Affairs.
You should have apply Moca jobs, post draft by ministry of cultural affairs address. Only eligible Job candidate can apply for MOCA Teletalk is now very easy. Ministry of Cultural Affairs job Candidate can easily apply any govt jobs visiting Teletalk official website. If you are Completed your registration for Ministry of Cultural Affairs check below this instruction.
Ministry of Cultural Affairs official website will published soon Job exam Date.Our website next post about MOCA Admit Card Download. We publish another post like as Ministry of Cultural Affairs Admit card download notice and exam date information in your mobile sms. Then you will be enable to download your MOCA Admit Card and prepare for Written Exam in 2019. Please collect your user id and password for Download your Admit card.
I hope you complete all steps about MOCA Jobs circular 2019. Ministry of Cultural Affairs Job Vacancy Notice are collect from Daily Newspaper and the official website of MOCA. After If you face any problem about Ministry of Cultural Affairs Job 2019. Please contact with us on Facebook. You can join us facebook page and facebook groups. You can message our Facebook page about MOCA job circular 2019.Thanks for read our MOCA job circular post in my website.