text:
Q: REST API Authentication with Jersey I'm trying to implement an authentication on my current Java Restful API (Jersey) by following this tutorial. I put all new authentication classes inside a "auth" package. When I run the jquery example code, it says that "DemoBusinessRESTResourceProxy is an interface and cannot be instantiated". So I research and decided to put the Jersey annotations on DemoBusinessRESTResource and delete DemoBusinessRESTResourceProxy:
@Local
@Path("access/")
@Stateless(name = "DemoBusinessRESTResource", mappedName = "ejb/DemoBusinessRESTResource")
public class DemoBusinessRESTResource {

    private static final long serialVersionUID = -6663599014192066936L;

    @POST
    @Path("/login")
    @Produces(MediaType.APPLICATION_JSON)
    public Response login(@Context HttpHeaders httpHeaders,
            @FormParam("username") String username,
            @FormParam("password") String password) {

        Authenticator authenticator = Authenticator.getInstance();
        String serviceKey = httpHeaders
                .getHeaderString(HTTPHeaderNames.SERVICE_KEY);

        try {
            String authToken = authenticator.login(serviceKey, username,
                    password);

            JsonObjectBuilder jsonObjBuilder = Json.createObjectBuilder();
            jsonObjBuilder.add("auth_token", authToken);
            JsonObject jsonObj = jsonObjBuilder.build();

            return getNoCacheResponseBuilder(Response.Status.OK).entity(
                    jsonObj.toString()).build();

        } catch (final LoginException ex) {
            JsonObjectBuilder jsonObjBuilder = Json.createObjectBuilder();
            jsonObjBuilder.add("message",
                    "Problem matching service key, username and password");
            JsonObject jsonObj = jsonObjBuilder.build();

            return getNoCacheResponseBuilder(Response.Status.UNAUTHORIZED)
                    .entity(jsonObj.toString()).build();
        }
    }

    @GET
    @Path("/demo-get-method")
    @Produces(MediaType.APPLICATION_JSON)
    public Response demoGetMethod() {
        JsonObjectBuilder jsonObjBuilder = Json.createObjectBuilder();
        jsonObjBuilder.add("message", "Executed demoGetMethod");
        JsonObject jsonObj = jsonObjBuilder.build();

        return getNoCacheResponseBuilder(Response.Status.OK).entity(
                jsonObj.toString()).build();
    }

    @POST
    @Path("/demo-post-method")
    @Produces(MediaType.APPLICATION_JSON)
    public Response demoPostMethod() {
        JsonObjectBuilder jsonObjBuilder = Json.createObjectBuilder();
        jsonObjBuilder.add("message", "Executed demoPostMethod");
        JsonObject jsonObj = jsonObjBuilder.build();

        return getNoCacheResponseBuilder(Response.Status.ACCEPTED).entity(
                jsonObj.toString()).build();
    }

    @POST
    @Path("/logout")
    public Response logout(@Context HttpHeaders httpHeaders) {
        try {
            Authenticator authenticator = Authenticator.getInstance();
            String serviceKey = httpHeaders
                    .getHeaderString(HTTPHeaderNames.SERVICE_KEY);
            String authToken = httpHeaders
                    .getHeaderString(HTTPHeaderNames.AUTH_TOKEN);

            authenticator.logout(serviceKey, authToken);

            return getNoCacheResponseBuilder(Response.Status.NO_CONTENT)
                    .build();
        } catch (final GeneralSecurityException ex) {
            return getNoCacheResponseBuilder(
                    Response.Status.INTERNAL_SERVER_ERROR).build();
        }
    }

    private Response.ResponseBuilder getNoCacheResponseBuilder(
            Response.Status status) {
        CacheControl cc = new CacheControl();
        cc.setNoCache(true);
        cc.setMaxAge(-1);
        cc.setMustRevalidate(true);

        return Response.status(status).cacheControl(cc);
    }
}

Now, I'm getting this error:

A system exception occurred during an invocation on EJB BusinessRESTResource, method: public javax.ws.rs.core.Response com.rest.auth.DemoBusinessRESTResource.login(javax.ws.rs.core.HttpHeaders,java.lang.String,java.lang.String), Caused by: java.lang.AbstractMethodError: com.sun.jersey.spi.container.ContainerRequest.getHeaderString(Ljava/lang/String;)Ljava/lang/String;

I'm new in Java WS and I'm totally lost.

A: I found the problem. The problem was the jar version files.

redpajama_set_name: RedPajamaStackExchange


a person, especially a sheriff or deputy, who serves writs, warrants, subpoenas, etc.
Authorized and Licensed by the State of Texas. The Windsor Agency will work diligently to get your documents served swiftly and inexpensively.
and Nationwide Civil Process Service.
Finding a good Texas Process Server can be very time consuming. With The Windsor Agency we make it easy for you to serve any documents anywhere in the country.
Call us Today for more information about our Civil Process Service!


Yes, our loyal customers appreciate and value our expertise and proven solutions—but our reputation, and the reason they keep coming back to us, is our collaborative, partnership approach. GPA customers have peace of mind because they know we are with them beyond just the normal project life cycle. We know we are only successful if our customers' processes are performing at optimum levels, and we will not be satisfied until we achieve this objective.
Unplanned downtime and unnecessary loss of output and materials are unacceptable, which is why GPA provides highly responsive, 24/7 automation support. Our highly skilled team can serve as a reliable, dedicated partner in your day-to-day operations and act as a trusted extension of your team.


This month at Business Breakfast Club, Lauren Babic of BAL Lawyers discussed unfair contract terms with a specific focus on the remedies available for small businesses and consumers, and the Australian Competition and Consumer Commission's (ACCC) approach to unfair contract terms. We also had a roundtable discussion about the recent report of the Royal Commission into Misconduct in the Banking, Superannuation and Financial Services Industry.
Terms that allow one party to unilaterally change the contract without the consent of the other party should be a warning sign that the terms may be unfair. We looked at the case of Australian Competition and Consumer Commission v Servcorp Limited  FCA 1044 and specifically the contracts in that case to identify any unfair terms. The clauses the Court considered unfair related to limiting the performance of the contract, no reciprocal indemnity clauses, automatic renewal clauses, and terminating the contract for convenience without giving the other party any equal rights which might balance the relationship.
Once a term is deemed to be unfair, that term becomes void and is no longer binding on the parties. The rest of the contract will continue to operate without the unfair term. A party who seeks to impose or enforce an unfair term may be held to be engaging in unconscionable conduct or misleading and deceptive conduct.
In 2016, the ACCC conducted a review of standard form contracts in a number of industries. Of the contracts reviewed, the most commonly occurring problems were terms that allowed the contract provider to unilaterally vary all terms, broad and unreasonable power to protect themselves against loss or damage, and an unreasonable ability to terminate the contract.
seek a ruling from a court or tribunal that the term is unfair.
For more information, please contact Lauren Babic. The next Business Breakfast Club will be held on 8 March 2019 on Undue Influence and Unconscionable Conduct: What Thorne v Kennedy means for business contracts. If you would like to attend, please contact us.


text:
Building Better Reference Intervals for Children
On the Trail of Biothreats
Potential Game Changer in Tracking Cholera
Solving the Mystery of a Coagulopathy Outbreak
STAT Testing Balancing Act
Substantive Lasting Headway Against Unnecessary UTI Tests
The March of Cancer Immunotherapies
AACC.org // Clinical Laboratory News // CLN Stat // Building Better Reference Intervals for Children
Leaders in clinical laboratory medicine call on Congress to fund expansions of sample pools, establish more accurate ranges.
Date: MAR.21.2019 // Source: CLN Stat
Analytes,
Universal Lab Issues,
Patient Population/Patient Type,
Reference Intervals,
Patient Safety,
Biological Variation
Pediatric reference intervals are key to medical decisionmaking, but suffer from errors and large information gaps. In an AACC-sponsored congressional briefing on February 27, leaders in clinical laboratory medicine from the federal and private sectors discussed ways to counter these issues, including increasing access to samples of healthy children covering all ages and developmental ranges, expanding biomarker measurements, and ensuring that clinical laboratories use the same reference intervals.
AACC, which has long advocated for harmonizing test results, and the Centers for Disease Control and Prevention (CDC) are looking into a partnership to improve upon and expand reference intervals for children. "Our goal is to make Congress aware that we need funding" to make these improvements happen, said moderator David Koch, PhD, DABCC, FAACC, director of clinical chemistry, toxicology, and point-of-care testing at Grady Memorial Hospital in Atlanta and chair of AACC's Policy and External Affairs Core Committee.
Intervals define normal biomarker levels in healthy children, said Hubert Vesper, PhD, CDC's director of clinical standardization programs. However, the intervals labs currently use aren't consistent and accurate enough to reliably diagnose and treat children in a cost-effective manner, Vesper said. Laboratories generally haven't had widespread access to samples from healthy children to develop more precise intervals for most pediatric lab tests. Pediatric cohorts and reference ranges often vary from lab to lab. "Labs can only work with the systems available to them, and the information they have is very limited," added Vesper.
Many tests still don't have a well-defined, accurate pediatric reference interval. Using adult reference intervals in children could result in a misdiagnosis. "Children are not little adults," said Patrick Mason, MD, PhD, a regional medical director at Quest Diagnostics in Chantilly, Virginia. Certain biomarkers such as thyroid abnormalities are going to present much differently in an adult than in an infant, for example, Mason said.
Avoiding harm to patients, not to mention unnecessary medical costs, are key issues for labs, said Dennis Dietzen, PhD, DABCC, FAACC, medical director of laboratory services at St. Louis Children's Hospital in Missouri and immediate past president of AACC. "If we miss a diagnosis in a child, that has lifelong consequences for the patient and associated costs." The same outcomes can happen if an overdiagnosis leads to treatments and procedures a patient didn't need.
But pediatric reference intervals are hard to build. Laboratories need large numbers of healthy children from birth through adulthood, said Dietzen, citing one example in which more than 1,000 specimens were required for developing a reference interval for creatinine. "Other biomarkers may exhibit seasonal, ethnic, or geographic variability. This requires even bigger numbers," he told CLN Stat. Not only that, but parents have to give their consent for their children to volunteer, and undergo phlebotomy. "Depending on the age of the child, he or she also has to agree to phlebotomy even if Mom or Dad says it's okay. The child can overrule. This is an incredibly difficult hurdle to overcome," Dietzen emphasized.
Labs need to acquire as much blood as possible to study large numbers of lab parameters. However, the volume of blood a lab can collect in the youngest children is limited. "This situation also dictates the need for more participants," Dietzen said. Once a lab acquires all of these specimens, it has to process, store, and analyze the specimens. "This is a labor-intensive, expensive proposition," he added.
Solutions involve creating well-characterized pediatric cohorts and measuring these children with reliable and accurate tests, Vesper said. The bottom line is "labs all need to use the same reference ranges," he stressed.
CDC already has an infrastructure in place for developing and applying accurate and reliable lab tests in well-characterized pediatric populations, Vesper noted. The agency's National Health and Nutrition Examination Survey (NHANES) provides data on more than 30 health and disease biomarkers in children and adolescents, including hormones, lipids, and iron status. The problem is CDC doesn't have this information for children in all age groups. In addition, the NHANES biomarker data doesn't cover all of the needs of clinical labs—which routinely measure more than 30 biomarkers, he said. More biomarker measurements are needed, in addition to more reference ranges in children at all stages of development.
Data on children ages 3 years or younger is needed in particular, according to Vesper.
AACC in a policy brief has called on Congress to fund an initiative within CDC to establish more comprehensive, reliable pediatric reference intervals, expanding NHANES' survey to include additional children ages 0-18 and build a more robust sample pool. CDC's Environmental Health Laboratory could perform testing on the samples to produce more accurate intervals based on age, ethnicity, gender, and stages of development. In a letter to the Senate and House Appropriations Subcommittees on Labor, Health and Human Services, Education, and Related Agencies, AACC and 19 other major healthcare organizations also urged Congress to provide funding so that the Centers for Disease Control and Prevention (CDC) can fill a crucial gap in children's medical testing by developing accurate pediatric reference intervals.
AACC would play a role in this effort, partnering with CDC to distribute these improved reference intervals to the laboratory community.
Searching for the perfect interval will be "an ongoing process" as instruments continue to evolve, said Mason. "Technology is getting better and more specific. A reference interval for an immunoassay is not going to be the same as the interval used for a tandem mass spectrometry assay."
To address the consent issue, some organizations have taken gradual, multistep approaches to gain parental trust. The CALIPER (Canadian Laboratory Initiative on Paediatric Reference Intervals Database) group, for example, talks to assemblies of students and parents at schools about the importance of reference intervals, Dietzen said. "They make themselves available to answer questions and once they reach a level of comfort, they come in and set up consenting and phlebotomy sessions." Seeing the family doctor is another good setting to address this issue. "Coming at naive patients with a consent form in one hand and a needle in the other is not effective," Dietzen said.

redpajama_set_name: RedPajamaCommonCrawl


Encouraged by family members, Jill Fanshawe Kato started drawing at an early age.
Her interest in the natural world was awakened at the age of ten, when her family moved from Nottingham to the small Devonshire village of Kingskerswell, near Torquay. She cared for numerous injured or orphaned wild birds and animals and had a tame jackdaw which stayed for 3 years before returning to the wild. Thus started her lifelong love of nature which can be seen today in her ceramics.Travel to Spain, Asian countries, Brazil, to mountains and tropical islands such as the Maldives and Okinawa have all acted as sources of inspiration for Jill's ceramics.
She graduated in Painting from Chelsea School of Art, London, then gained an Art Teacher's Certificate. After a period of teaching she had the opportunity to visit Tokyo in Japan.
Even in the cheapest restaurants a long fish would be served on a long rectangular blue and white dish, with a variety of small dishes to complement the food. Sushi in shades of crimson, orange, yellow and silver appeared on a simple wooden board, beside it a yunomi cup of tea with fishing net painted on it. Expensive restaurants would use or display pottery by famous ceramic artists and handmade ceramics were a part of everyday life. As a result of these experiences, Jill joined the school of potter Yosei Itaka and began to study Japanese pottery. This study was enhanced by visits to many of the traditional pottery towns and villages, some in production for over 1000 years. She tried Karatsu clay at Musoan Pottery School, near Tokyo, and experimented in the disused studio of a friend, with many kinds of clay and glazes fired in a gas kiln.
Returning to London in 1977, Jill established her first studio with a grant from the Crafts council. Since then, she has lived and worked in north London with her husband, Japanese photo-journalist Setsuo Kato. She continues to exhibit in Japan, with 43 exhibitions there, mainly at Keio Department Store in Tokyo but also in Okinawa. She has exhibited widely internationally and across the UK.Jill was a lecturer on the Postgraduate Ceramics Diploma course at Goldsmiths College, London, for 17 years and tutor at Lambeth Institute and Kingsway College. She lectures widely on ceramics, demonstrates and teaches.
She has worked at the studio of potter Ryoji Koie in Japan and was recently invited to two ceramic residencies in Spain.
Interests include keeping an allotment with her husband, countryside walking, bird-watching, horse riding, going to exhibitions, sketching, travel.
Jill is currently establishing a studio in Devon.
Jill's ceramics are inspired by the natural world and by travel. Making processes include coiling, slabbing, sculpting, using moulds and throwing and altering. Slips and glazes are applied for colour, which she constantly experiments with. She uses a range of stoneware clays and is currently experimenting with additions of River Dart clay, fired to 1270 degrees c. in a Laser gas kiln. Some raku pottery is also made.
Work ranges from functional pottery for Western and Japanese use to large sculptural commissions and wall murals.
'Over the past three decades Jill's distinctive stoneware vessels decorated with images drawn from the natural world have been exhibited internationally, but most particularly in Japan and the UK. Fanshawe Kato frequently visits Japan to exhibit and study and her work is suffused with an intelligent understanding of the particular art of Japanese pots which she also in a modest way collects. The tactile, animated qualities- the 'atatakai' as the Japanese expression has it- are clearly evident in her work. Yet there is also in the stylised bird, fish and plant forms and indeed the bold, gestural abstract blocks of colours, a quintessentially English quality, a kind of gentle humour that one sees in the works of painters such as Mary Newcombe or the illustrations of Eric Ravilious.


No matter how good the food is on Thanksgiving Day and other special dinners, leftovers get old fairly quickly. What if you could clean up those leftovers in one shot and create delicious, healthy, ready-to-heat meals for later? This turkey pot pie recipe is the answer!
Every year my cousin cooks a spectacular Thanksgiving Day dinner. The table is laden with platters of delectable food and even though a dozen of us dine (with second helpings), there are always leftovers.
This year she jumped on the chance to send me home with extra portions when I mentioned interest in trying to make personal-sized turkey pot pies!
Although it was spur-of-the-moment and my first time making meat pies, they turned out incredible! The crust is superbly crisp, flakey and buttery, and was easy to make. I just had to share the recipe with you all!
Warning: the filling was thrown together as I headed out the door so we haven't exact measurements.
Potatoes, chunked, cooked (optional) - we had mashed but if you have roasted for dinner, throw some potato in, too!
Makes enough dough to cut twelve (12) 5-inch round cutouts, 6 to line plates and 6 pie tops.
In a large bowl, stir flours, sugar and salt.
Cut in slices of butter using a pastry cutter or fork until the largest pieces resemble peas.
Pour milk over mixture, 1 tbsp at a time, just until moistened to hold dough together.
Use fork to stir dough after you've added each tbsp of milk.
Quickly form the dough into a ball and chill for 2 hours or refrigerate until ready to use.
Roll the dough out on a large, floured surface until approximately 3-4 mm thick.
Use the pie plate as a stencil for the tops (6).
For the bottom crusts (6), cut extra around the pie plate stencil to ensure enough pastry to line the sides of the pie plate.
Line pie plate with bigger crust piece.
Scoop filling into crusted pie plate, don't be shy, fill it so it's a nice mound.
Fit top crust over filling and with the handle of a butter knife, pinch the top and bottom crust together where they meet on the sides.
Slice top of pie several times (see pic).
Place in freezer over night to harden. Transfer to zip lock bags in the morning.
Heat oven to 400º F.
Place pie on cookie sheet and bake for 40 minutes or until crust is golden brown.
Heat oven to 350º F.
Place pie on cookie sheet and bake for 25-30 minutes or until crust is golden brown.
Tip: Make the pastry the night before you want to build the pies. The crust must have a chance to chill.


text:
package io.netty.handler.codec.http2;

import static io.netty.buffer.Unpooled.wrappedBuffer;
import static io.netty.handler.codec.http2.Http2CodecUtil.DEFAULT_PRIORITY_WEIGHT;
import static io.netty.handler.codec.http2.Http2CodecUtil.emptyPingBuf;
import static io.netty.handler.codec.http2.Http2Error.PROTOCOL_ERROR;
import static io.netty.handler.codec.http2.Http2Stream.State.CLOSED;
import static io.netty.handler.codec.http2.Http2Stream.State.HALF_CLOSED_LOCAL;
import static io.netty.handler.codec.http2.Http2Stream.State.IDLE;
import static io.netty.handler.codec.http2.Http2Stream.State.OPEN;
import static io.netty.handler.codec.http2.Http2Stream.State.RESERVED_LOCAL;
import static io.netty.util.CharsetUtil.UTF_8;
import static org.hamcrest.CoreMatchers.instanceOf;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertFalse;
import static org.junit.Assert.assertNotNull;
import static org.junit.Assert.assertThat;
import static org.junit.Assert.assertTrue;
import static org.junit.Assert.fail;
import static org.mockito.Matchers.any;
import static org.mockito.Matchers.anyBoolean;
import static org.mockito.Matchers.anyInt;
import static org.mockito.Matchers.anyLong;
import static org.mockito.Matchers.anyShort;
import static org.mockito.Matchers.eq;
import static org.mockito.Mockito.doAnswer;
import static org.mockito.Mockito.doNothing;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.never;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.verifyNoMoreInteractions;
import static org.mockito.Mockito.when;
import io.netty.buffer.ByteBuf;
import io.netty.buffer.Unpooled;
import io.netty.buffer.UnpooledByteBufAllocator;
import io.netty.channel.Channel;
import io.netty.channel.ChannelFuture;
import io.netty.channel.ChannelFutureListener;
import io.netty.channel.ChannelHandlerContext;
import io.netty.channel.ChannelPromise;
import io.netty.channel.DefaultChannelPromise;
import io.netty.handler.codec.http2.Http2Exception.ClosedStreamCreationException;
import io.netty.handler.codec.http2.Http2RemoteFlowController.FlowControlled;
import io.netty.util.concurrent.Future;
import io.netty.util.concurrent.GenericFutureListener;
import io.netty.util.concurrent.ImmediateEventExecutor;

import java.util.ArrayList;
import java.util.List;

import junit.framework.AssertionFailedError;
import org.junit.Before;
import org.junit.Test;
import org.mockito.ArgumentCaptor;
import org.mockito.Matchers;
import org.mockito.Mock;
import org.mockito.MockitoAnnotations;
import org.mockito.invocation.InvocationOnMock;
import org.mockito.stubbing.Answer;

/**
 * Tests for {@link DefaultHttp2ConnectionEncoder}
 */
public class DefaultHttp2ConnectionEncoderTest {
    private static final int STREAM_ID = 1;
    private static final int PUSH_STREAM_ID = 2;

    private Http2ConnectionEncoder encoder;

    @Mock
    private Http2Connection connection;

    @Mock
    private Http2Connection.Endpoint<Http2RemoteFlowController> remote;

    @Mock
    private Http2Connection.Endpoint<Http2LocalFlowController> local;

    @Mock
    private Http2RemoteFlowController remoteFlow;

    @Mock
    private ChannelHandlerContext ctx;

    @Mock
    private Channel channel;

    private ChannelPromise promise;

    @Mock
    private ChannelPromise voidPromise;

    @Mock
    private ChannelFuture future;

    @Mock
    private Http2Stream stream;

    @Mock
    private Http2Stream pushStream;

    @Mock
    private Http2FrameListener listener;

    @Mock
    private Http2FrameWriter writer;

    @Mock
    private Http2FrameWriter.Configuration writerConfig;

    @Mock
    private Http2FrameSizePolicy frameSizePolicy;

    @Mock
    private Http2LifecycleManager lifecycleManager;

    private ArgumentCaptor<Http2RemoteFlowController.FlowControlled> payloadCaptor;
    private List<String> writtenData;
    private List<Integer> writtenPadding;
    private boolean streamClosed;

    @Before
    public void setup() throws Exception {
        MockitoAnnotations.initMocks(this);

        promise = new DefaultChannelPromise(channel, ImmediateEventExecutor.INSTANCE);
        when(voidPromise.addListener(Matchers.<GenericFutureListener<Future<? super Void>>>any())).thenThrow(
                new AssertionFailedError());
        when(voidPromise.addListeners(Matchers.<GenericFutureListener<Future<? super Void>>>any())).thenThrow(
                new AssertionFailedError());

        when(channel.isActive()).thenReturn(true);
        when(stream.id()).thenReturn(STREAM_ID);
        when(stream.state()).thenReturn(OPEN);
        when(stream.open(anyBoolean())).thenReturn(stream);
        when(pushStream.id()).thenReturn(PUSH_STREAM_ID);
        doAnswer(new Answer<Http2Stream>() {
            @Override
            public Http2Stream answer(InvocationOnMock in) throws Throwable {
                Http2StreamVisitor visitor = in.getArgumentAt(0, Http2StreamVisitor.class);
                if (!visitor.visit(stream)) {
                    return stream;
                }
                return null;
            }
        }).when(connection).forEachActiveStream(any(Http2StreamVisitor.class));
        when(connection.stream(STREAM_ID)).thenReturn(stream);
        when(connection.local()).thenReturn(local);
        when(connection.remote()).thenReturn(remote);
        when(remote.flowController()).thenReturn(remoteFlow);
        when(writer.configuration()).thenReturn(writerConfig);
        when(writerConfig.frameSizePolicy()).thenReturn(frameSizePolicy);
        when(frameSizePolicy.maxFrameSize()).thenReturn(64);
        when(local.createIdleStream(eq(STREAM_ID))).thenReturn(stream);
        when(local.reservePushStream(eq(PUSH_STREAM_ID), eq(stream))).thenReturn(pushStream);
        when(remote.createIdleStream(eq(STREAM_ID))).thenReturn(stream);
        when(remote.reservePushStream(eq(PUSH_STREAM_ID), eq(stream))).thenReturn(pushStream);
        when(writer.writeSettings(eq(ctx), any(Http2Settings.class), eq(promise))).thenReturn(future);
        when(writer.writeGoAway(eq(ctx), anyInt(), anyInt(), any(ByteBuf.class), eq(promise)))
                .thenReturn(future);
        writtenData = new ArrayList<String>();
        writtenPadding = new ArrayList<Integer>();
        when(writer.writeData(eq(ctx), anyInt(), any(ByteBuf.class), anyInt(), anyBoolean(), any(ChannelPromise.class)))
                .then(new Answer<Object>() {
            @Override
            public Object answer(InvocationOnMock invocationOnMock) throws Throwable {
                // Make sure we only receive stream closure on the last frame and that void promises are used for
                // all writes except the last one.
                ChannelPromise receivedPromise = (ChannelPromise) invocationOnMock.getArguments()[5];
                if (streamClosed) {
                    fail("Stream already closed");
                } else {
                    streamClosed = (Boolean) invocationOnMock.getArguments()[4];
                }
                writtenPadding.add((Integer) invocationOnMock.getArguments()[3]);
                ByteBuf data = (ByteBuf) invocationOnMock.getArguments()[2];
                writtenData.add(data.toString(UTF_8));
                // Release the buffer just as DefaultHttp2FrameWriter does
                data.release();
                // Let the promise succeed to trigger listeners.
                receivedPromise.trySuccess();
                return future;
            }
        });
        when(writer.writeHeaders(eq(ctx), anyInt(), any(Http2Headers.class), anyInt(), anyShort(), anyBoolean(),
                anyInt(), anyBoolean(), any(ChannelPromise.class)))
                .then(new Answer<Object>() {
                    @Override
                    public Object answer(InvocationOnMock invocationOnMock) throws Throwable {
                        ChannelPromise receivedPromise = (ChannelPromise) invocationOnMock.getArguments()[8];
                        if (streamClosed) {
                            fail("Stream already closed");
                        } else {
                            streamClosed = (Boolean) invocationOnMock.getArguments()[5];
                        }
                        receivedPromise.trySuccess();
                        return future;
                    }
                });
        payloadCaptor = ArgumentCaptor.forClass(Http2RemoteFlowController.FlowControlled.class);
        doNothing().when(remoteFlow).addFlowControlled(eq(ctx), eq(stream), payloadCaptor.capture());
        when(ctx.alloc()).thenReturn(UnpooledByteBufAllocator.DEFAULT);
        when(ctx.channel()).thenReturn(channel);
        when(ctx.newSucceededFuture()).thenReturn(future);
        when(ctx.newPromise()).thenReturn(promise);
        when(ctx.write(any())).thenReturn(future);
        when(ctx.flush()).thenThrow(new AssertionFailedError("forbidden"));

        encoder = new DefaultHttp2ConnectionEncoder(connection, writer);
        encoder.lifecycleManager(lifecycleManager);
    }

    @Test
    public void dataWriteShouldSucceed() throws Exception {
        final ByteBuf data = dummyData();
        encoder.writeData(ctx, STREAM_ID, data, 0, true, promise);
        assertEquals(payloadCaptor.getValue().size(), 8);
        payloadCaptor.getValue().write(8);
        assertEquals(0, payloadCaptor.getValue().size());
        assertEquals("abcdefgh", writtenData.get(0));
        assertEquals(0, data.refCnt());
    }

    @Test
    public void dataFramesShouldMerge() throws Exception {
        final ByteBuf data = dummyData().retain();
        DefaultChannelPromise secondPromise = new DefaultChannelPromise(channel, ImmediateEventExecutor.INSTANCE);
        encoder.writeData(ctx, STREAM_ID, data, 0, true, promise);
        encoder.writeData(ctx, STREAM_ID, data, 0, true, secondPromise);
        List<FlowControlled> capturedWrites = payloadCaptor.getAllValues();
        FlowControlled mergedPayload = capturedWrites.get(0);
        mergedPayload.merge(capturedWrites.get(1));

        assertEquals(16, mergedPayload.size());
        assertFalse(secondPromise.isSuccess());
        mergedPayload.write(16);
        assertEquals(0, mergedPayload.size());
        assertEquals("abcdefghabcdefgh", writtenData.get(0));
        assertEquals(0, data.refCnt());
        // Second promise is notified after write of the merged payload completes
        assertTrue(secondPromise.isSuccess());
    }

    @Test
    public void dataFramesShouldMergeUseVoidPromise() throws Exception {
        final ByteBuf data = dummyData().retain();
        when(voidPromise.isVoid()).thenReturn(true);
        encoder.writeData(ctx, STREAM_ID, data, 0, true, voidPromise);
        encoder.writeData(ctx, STREAM_ID, data, 0, true, voidPromise);
        List<FlowControlled> capturedWrites = payloadCaptor.getAllValues();
        FlowControlled mergedPayload = capturedWrites.get(0);
        assertTrue(mergedPayload.merge(capturedWrites.get(1)));

        assertEquals(16, mergedPayload.size());
        mergedPayload.write(16);
        assertEquals(0, mergedPayload.size());
        assertEquals("abcdefghabcdefgh", writtenData.get(0));
        assertEquals(0, data.refCnt());
    }

    @Test
    public void dataFramesDontMergeWithHeaders() throws Exception {
        final ByteBuf data = dummyData().retain();
        encoder.writeData(ctx, STREAM_ID, data, 0, true, promise);
        encoder.writeHeaders(ctx, STREAM_ID, EmptyHttp2Headers.INSTANCE, 0, false, promise);
        List<FlowControlled> capturedWrites = payloadCaptor.getAllValues();
        assertFalse(capturedWrites.get(0).merge(capturedWrites.get(1)));
    }

    @Test
    public void dataLargerThanMaxFrameSizeShouldBeSplit() throws Exception {
        when(frameSizePolicy.maxFrameSize()).thenReturn(3);
        final ByteBuf data = dummyData();
        encoder.writeData(ctx, STREAM_ID, data, 0, true, promise);
        assertEquals(payloadCaptor.getValue().size(), 8);
        payloadCaptor.getValue().write(8);
        // writer was called 3 times
        assertEquals(3, writtenData.size());
        assertEquals("abc", writtenData.get(0));
        assertEquals("def", writtenData.get(1));
        assertEquals("gh", writtenData.get(2));
        assertEquals(0, data.refCnt());
    }

    @Test
    public void paddingSplitOverFrame() throws Exception {
        when(frameSizePolicy.maxFrameSize()).thenReturn(5);
        final ByteBuf data = dummyData();
        encoder.writeData(ctx, STREAM_ID, data, 5, true, promise);
        assertEquals(payloadCaptor.getValue().size(), 13);
        payloadCaptor.getValue().write(13);
        // writer was called 3 times
        assertEquals(3, writtenData.size());
        assertEquals("abcde", writtenData.get(0));
        assertEquals(0, (int) writtenPadding.get(0));
        assertEquals("fgh", writtenData.get(1));
        assertEquals(2, (int) writtenPadding.get(1));
        assertEquals("", writtenData.get(2));
        assertEquals(3, (int) writtenPadding.get(2));
        assertEquals(0, data.refCnt());
    }

    @Test
    public void frameShouldSplitPadding() throws Exception {
        when(frameSizePolicy.maxFrameSize()).thenReturn(5);
        ByteBuf data = dummyData();
        encoder.writeData(ctx, STREAM_ID, data, 10, true, promise);
        assertEquals(payloadCaptor.getValue().size(), 18);
        payloadCaptor.getValue().write(18);
        // writer was called 4 times
        assertEquals(4, writtenData.size());
        assertEquals("abcde", writtenData.get(0));
        assertEquals(0, (int) writtenPadding.get(0));
        assertEquals("fgh", writtenData.get(1));
        assertEquals(2, (int) writtenPadding.get(1));
        assertEquals("", writtenData.get(2));
        assertEquals(5, (int) writtenPadding.get(2));
        assertEquals("", writtenData.get(3));
        assertEquals(3, (int) writtenPadding.get(3));
        assertEquals(0, data.refCnt());
    }

    @Test
    public void emptyFrameShouldSplitPadding() throws Exception {
        ByteBuf data = Unpooled.buffer(0);
        assertSplitPaddingOnEmptyBuffer(data);
        assertEquals(0, data.refCnt());
    }

    @Test
    public void singletonEmptyBufferShouldSplitPadding() throws Exception {
        assertSplitPaddingOnEmptyBuffer(Unpooled.EMPTY_BUFFER);
    }

    private void assertSplitPaddingOnEmptyBuffer(ByteBuf data) throws Exception {
        when(frameSizePolicy.maxFrameSize()).thenReturn(5);
        encoder.writeData(ctx, STREAM_ID, data, 10, true, promise);
        assertEquals(payloadCaptor.getValue().size(), 10);
        payloadCaptor.getValue().write(10);
        // writer was called 2 times
        assertEquals(2, writtenData.size());
        assertEquals("", writtenData.get(0));
        assertEquals(5, (int) writtenPadding.get(0));
        assertEquals("", writtenData.get(1));
        assertEquals(5, (int) writtenPadding.get(1));
    }

    @Test
    public void headersWriteForUnknownStreamShouldCreateStream() throws Exception {
        int streamId = 5;
        when(stream.id()).thenReturn(streamId);
        when(stream.state()).thenReturn(IDLE);
        mockFutureAddListener(true);
        when(local.createStream(eq(streamId), anyBoolean())).thenReturn(stream);
        encoder.writeHeaders(ctx, streamId, EmptyHttp2Headers.INSTANCE, 0, false, promise);
        verify(local).createStream(eq(streamId), eq(false));
        assertNotNull(payloadCaptor.getValue());
        payloadCaptor.getValue().write(0);
        verify(writer).writeHeaders(eq(ctx), eq(streamId), eq(EmptyHttp2Headers.INSTANCE), eq(0),
                eq(DEFAULT_PRIORITY_WEIGHT), eq(false), eq(0), eq(false), eq(promise));
    }

    @Test
    public void headersWriteShouldOpenStreamForPush() throws Exception {
        mockFutureAddListener(true);
        when(stream.state()).thenReturn(RESERVED_LOCAL);
        encoder.writeHeaders(ctx, STREAM_ID, EmptyHttp2Headers.INSTANCE, 0, false, promise);
        verify(stream).open(false);
        verify(stream, never()).closeLocalSide();
        assertNotNull(payloadCaptor.getValue());
        payloadCaptor.getValue().write(0);
        verify(writer).writeHeaders(eq(ctx), eq(STREAM_ID), eq(EmptyHttp2Headers.INSTANCE), eq(0),
                                    eq(DEFAULT_PRIORITY_WEIGHT), eq(false), eq(0), eq(false), eq(promise));
    }

    @Test
    public void pushPromiseWriteAfterGoAwayReceivedShouldFail() throws Exception {
        when(connection.goAwayReceived()).thenReturn(true);
        ChannelFuture future =  encoder.writePushPromise(ctx, STREAM_ID, PUSH_STREAM_ID, EmptyHttp2Headers.INSTANCE, 0,
                                                         promise);
        assertTrue(future.awaitUninterruptibly().cause() instanceof Http2Exception);
    }

    @Test
    public void pushPromiseWriteShouldReserveStream() throws Exception {
        encoder.writePushPromise(ctx, STREAM_ID, PUSH_STREAM_ID, EmptyHttp2Headers.INSTANCE, 0, promise);
        verify(local).reservePushStream(eq(PUSH_STREAM_ID), eq(stream));
        verify(writer).writePushPromise(eq(ctx), eq(STREAM_ID), eq(PUSH_STREAM_ID),
                eq(EmptyHttp2Headers.INSTANCE), eq(0), eq(promise));
    }

    @Test
    public void priorityWriteAfterGoAwayShouldSucceed() throws Exception {
        when(connection.goAwayReceived()).thenReturn(true);
        encoder.writePriority(ctx, STREAM_ID, 0, (short) 255, true, promise);
        verify(writer).writePriority(eq(ctx), eq(STREAM_ID), eq(0), eq((short) 255), eq(true), eq(promise));
    }

    @Test
    public void priorityWriteShouldSetPriorityForStream() throws Exception {
        when(connection.stream(STREAM_ID)).thenReturn(null);
        encoder.writePriority(ctx, STREAM_ID, 0, (short) 255, true, promise);
        verify(stream).setPriority(eq(0), eq((short) 255), eq(true));
        verify(writer).writePriority(eq(ctx), eq(STREAM_ID), eq(0), eq((short) 255), eq(true), eq(promise));
        verify(local).createIdleStream(STREAM_ID);
        verify(stream, never()).open(anyBoolean());
    }

    @Test
    public void priorityWriteOnPreviouslyExistingStreamShouldSucceed() throws Exception {
        doAnswer(new Answer<Http2Stream>() {
            @Override
            public Http2Stream answer(InvocationOnMock in) throws Throwable {
                throw new ClosedStreamCreationException(Http2Error.INTERNAL_ERROR);
            }
        }).when(local).createIdleStream(eq(STREAM_ID));
        when(connection.stream(STREAM_ID)).thenReturn(null);
        // Just return the stream object as the connection stream to ensure the dependent stream "exists"
        when(connection.stream(0)).thenReturn(stream);
        encoder.writePriority(ctx, STREAM_ID, 0, (short) 255, true, promise);
        verify(stream, never()).setPriority(anyInt(), anyShort(), anyBoolean());
        verify(writer).writePriority(eq(ctx), eq(STREAM_ID), eq(0), eq((short) 255), eq(true), eq(promise));
        verify(local).createIdleStream(STREAM_ID);
    }

    @Test
    public void priorityWriteOnPreviouslyExistingParentStreamShouldSucceed() throws Exception {
        doAnswer(new Answer<Http2Stream>() {
            @Override
            public Http2Stream answer(InvocationOnMock in) throws Throwable {
                throw new ClosedStreamCreationException(Http2Error.INTERNAL_ERROR);
            }
        }).when(stream).setPriority(eq(0), eq((short) 255), eq(true));
        when(connection.stream(STREAM_ID)).thenReturn(stream);
        encoder.writePriority(ctx, STREAM_ID, 0, (short) 255, true, promise);
        verify(stream).setPriority(eq(0), eq((short) 255), eq(true));
        verify(writer).writePriority(eq(ctx), eq(STREAM_ID), eq(0), eq((short) 255), eq(true), eq(promise));
    }

    @Test
    public void rstStreamWriteForUnknownStreamShouldIgnore() throws Exception {
        encoder.writeRstStream(ctx, 5, PROTOCOL_ERROR.code(), promise);
        verify(writer, never()).writeRstStream(eq(ctx), anyInt(), anyLong(), eq(promise));
    }

    @Test
    public void rstStreamWriteShouldCloseStream() throws Exception {
        encoder.writeRstStream(ctx, STREAM_ID, PROTOCOL_ERROR.code(), promise);
        verify(lifecycleManager).resetStream(eq(ctx), eq(STREAM_ID), eq(PROTOCOL_ERROR.code()), eq(promise));
    }

    @Test
    public void pingWriteAfterGoAwayShouldSucceed() throws Exception {
        when(connection.goAwayReceived()).thenReturn(true);
        encoder.writePing(ctx, false, emptyPingBuf(), promise);
        verify(writer).writePing(eq(ctx), eq(false), eq(emptyPingBuf()), eq(promise));
    }

    @Test
    public void pingWriteShouldSucceed() throws Exception {
        encoder.writePing(ctx, false, emptyPingBuf(), promise);
        verify(writer).writePing(eq(ctx), eq(false), eq(emptyPingBuf()), eq(promise));
    }

    @Test
    public void settingsWriteAfterGoAwayShouldSucceed() throws Exception {
        when(connection.goAwayReceived()).thenReturn(true);
        encoder.writeSettings(ctx, new Http2Settings(), promise);
        verify(writer).writeSettings(eq(ctx), any(Http2Settings.class), eq(promise));
    }

    @Test
    public void settingsWriteShouldNotUpdateSettings() throws Exception {
        Http2Settings settings = new Http2Settings();
        settings.initialWindowSize(100);
        settings.pushEnabled(false);
        settings.maxConcurrentStreams(1000);
        settings.headerTableSize(2000);
        encoder.writeSettings(ctx, settings, promise);
        verify(writer).writeSettings(eq(ctx), eq(settings), eq(promise));
    }

    @Test
    public void dataWriteShouldCreateHalfClosedStream() {
        mockSendFlowControlledWriteEverything();
        ByteBuf data = dummyData();
        encoder.writeData(ctx, STREAM_ID, data.retain(), 0, true, promise);
        verify(remoteFlow).addFlowControlled(eq(ctx), eq(stream), any(FlowControlled.class));
        verify(lifecycleManager).closeStreamLocal(stream, promise);
        assertEquals(data.toString(UTF_8), writtenData.get(0));
        data.release();
    }

    @Test
    public void headersWriteShouldHalfCloseStream() throws Exception {
        mockSendFlowControlledWriteEverything();
        int streamId = 5;
        when(stream.id()).thenReturn(streamId);
        when(stream.state()).thenReturn(HALF_CLOSED_LOCAL);
        mockFutureAddListener(true);
        when(local.createStream(eq(streamId), anyBoolean())).thenReturn(stream);
        when(writer.writeHeaders(eq(ctx), eq(streamId), eq(EmptyHttp2Headers.INSTANCE), eq(0),
                                 eq(DEFAULT_PRIORITY_WEIGHT), eq(false), eq(0), eq(true), eq(promise)))
                .thenReturn(future);
        encoder.writeHeaders(ctx, streamId, EmptyHttp2Headers.INSTANCE, 0, true, promise);
        verify(local).createStream(eq(streamId), eq(true));
        // Trigger the write and mark the promise successful to trigger listeners
        assertNotNull(payloadCaptor.getValue());
        payloadCaptor.getValue().write(0);
        promise.trySuccess();
        verify(lifecycleManager).closeStreamLocal(eq(stream), eq(promise));
    }

    @Test
    public void headersWriteShouldHalfClosePushStream() throws Exception {
        mockSendFlowControlledWriteEverything();
        mockFutureAddListener(true);
        when(stream.state()).thenReturn(RESERVED_LOCAL).thenReturn(HALF_CLOSED_LOCAL);
        when(writer.writeHeaders(eq(ctx), eq(STREAM_ID), eq(EmptyHttp2Headers.INSTANCE), eq(0),
                                 eq(DEFAULT_PRIORITY_WEIGHT), eq(false), eq(0), eq(true), eq(promise)))
                .thenReturn(future);
        encoder.writeHeaders(ctx, STREAM_ID, EmptyHttp2Headers.INSTANCE, 0, true, promise);
        verify(stream).open(true);

        promise.trySuccess();
        verify(lifecycleManager).closeStreamLocal(eq(stream), eq(promise));
    }

    @Test
    public void encoderDelegatesGoAwayToLifeCycleManager() {
        encoder.writeGoAway(ctx, STREAM_ID, Http2Error.INTERNAL_ERROR.code(), null, promise);
        verify(lifecycleManager).goAway(eq(ctx), eq(STREAM_ID), eq(Http2Error.INTERNAL_ERROR.code()),
                                        eq((ByteBuf) null), eq(promise));
        verifyNoMoreInteractions(writer);
    }

    @Test
    public void dataWriteToClosedStreamShouldFail() {
        when(stream.state()).thenReturn(CLOSED);
        ByteBuf data = mock(ByteBuf.class);
        encoder.writeData(ctx, STREAM_ID, data, 0, false, promise);
        assertTrue(promise.isDone());
        assertFalse(promise.isSuccess());
        assertThat(promise.cause(), instanceOf(IllegalStateException.class));
        verify(data).release();
    }

    @Test
    public void dataWriteToHalfClosedLocalStreamShouldFail() {
        when(stream.state()).thenReturn(HALF_CLOSED_LOCAL);
        ByteBuf data = mock(ByteBuf.class);
        encoder.writeData(ctx, STREAM_ID, data, 0, false, promise);
        assertTrue(promise.isDone());
        assertFalse(promise.isSuccess());
        assertThat(promise.cause(), instanceOf(IllegalStateException.class));
        verify(data).release();
    }

    @Test
    public void canWriteDataFrameAfterGoAwaySent() {
        when(connection.goAwaySent()).thenReturn(true);
        when(remote.lastStreamKnownByPeer()).thenReturn(0);
        ByteBuf data = mock(ByteBuf.class);
        encoder.writeData(ctx, STREAM_ID, data, 0, false, promise);
        verify(remoteFlow).addFlowControlled(eq(ctx), eq(stream), any(FlowControlled.class));
    }

    @Test
    public void canWriteHeaderFrameAfterGoAwaySent() {
        when(connection.goAwaySent()).thenReturn(true);
        when(remote.lastStreamKnownByPeer()).thenReturn(0);
        encoder.writeHeaders(ctx, STREAM_ID, EmptyHttp2Headers.INSTANCE, 0, false, promise);
        verify(remoteFlow).addFlowControlled(eq(ctx), eq(stream), any(FlowControlled.class));
    }

    @Test
    public void canWriteDataFrameAfterGoAwayReceived() {
        when(connection.goAwayReceived()).thenReturn(true);
        when(local.lastStreamKnownByPeer()).thenReturn(STREAM_ID);
        ByteBuf data = mock(ByteBuf.class);
        encoder.writeData(ctx, STREAM_ID, data, 0, false, promise);
        verify(remoteFlow).addFlowControlled(eq(ctx), eq(stream), any(FlowControlled.class));
    }

    @Test
    public void canWriteHeaderFrameAfterGoAwayReceived() {
        when(connection.goAwayReceived()).thenReturn(true);
        when(local.lastStreamKnownByPeer()).thenReturn(STREAM_ID);
        encoder.writeHeaders(ctx, STREAM_ID, EmptyHttp2Headers.INSTANCE, 0, false, promise);
        verify(remoteFlow).addFlowControlled(eq(ctx), eq(stream), any(FlowControlled.class));
    }

    private void mockSendFlowControlledWriteEverything() {
        doAnswer(new Answer<Void>() {
            @Override
            public Void answer(InvocationOnMock invocationOnMock) throws Throwable {
                FlowControlled flowControlled = (FlowControlled) invocationOnMock.getArguments()[2];
                flowControlled.write(Integer.MAX_VALUE);
                flowControlled.writeComplete();
                return null;
            }
        }).when(remoteFlow).addFlowControlled(eq(ctx), eq(stream), payloadCaptor.capture());
    }

    private void mockFutureAddListener(boolean success) {
        when(future.isSuccess()).thenReturn(success);
        if (!success) {
            when(future.cause()).thenReturn(new Exception("Fake Exception"));
        }
        doAnswer(new Answer<Void>() {
            @Override
            public Void answer(InvocationOnMock invocation) throws Throwable {
                ChannelFutureListener listener = (ChannelFutureListener) invocation.getArguments()[0];
                listener.operationComplete(future);
                return null;
            }
        }).when(future).addListener(any(ChannelFutureListener.class));
    }

    private static ByteBuf dummyData() {
        // The buffer is purposely 8 bytes so it will even work for a ping frame.
        return wrappedBuffer("abcdefgh".getBytes(UTF_8));
    }
}

redpajama_set_name: RedPajamaGithub


EPPO Reporting Service (2012/038) : first record in the wild in 2009.
* Brown PMJ, Thomas CE, Lombaert E, Jeffries DL, Estoup A, Lawson Handley LJ (2011) The global spread of Harmonia axyridis (Coleoptera: Coccinellidae): distribution, dispersal and routes of invasion. BioControl 56(4), 623-641.


text:
Headlines Tampa Bay
The 'almost made it' names on this year's top 25 Tampa Bay politicians
DNA privacy bill OK'd in first committee stop
Bill to compensate wrongfully convicted man clears Senate Judiciary committee
Sean Shaw discusses a very prolific year, fighting the good fight and putting 'People Over Profits'
The 'almost made it' names on this year's top 25 Tampa Bay politicians
Two elected officials who made the list last year just missed it this year.
Janelle Irwin Taylor
Not everyone can make the list, but this year several local elected officials just missed the cut.
U.S. Rep. Vern Buchanan and Florida State. Rep. Chris Latvala dropped off the list of Tampa Bay's most powerful politicians this year. Buchanan had been at No. 20 last year while Latvala came in 24th.
Hillsborough County Commissioner Kimberly Overman and Florida Sen. Ed Hooper also narrowly missed a spot, but neither made last year's list either.
Overman's near miss will likely get remedied in the years to come. She's a rookie Commissioner elected last year and hasn't had a lot of time to prove herself. But Overman is on her way up. The first-time elected official has been a vocal proponent for public transportation improvements and has shown to be a quick study on how to navigate her responsibilities as an elected official.
Most recently Overman was on the winning side of a vote to move forward with plans to bring ferry service to South Hillsborough County and MacDill Air Force Base despite concerns from some other colleagues that the plan would be dead on arrival because a necessary land deal with Mosaic to create a ferry terminal wasn't supported.
Like Overman, Hooper's position is new. Elected last year, this is Hooper's first stint as a State Senator. That freshman status doesn't lend well to the type of influence typically seen on the list.
Still, Hooper isn't exactly a freshman lawmaker. He formerly served in the Florida House of Representatives. His first Legislative Session as a Senator came with some wins that make him worthy of an honorable mention including earning the Florida League of Cities Legislative Appreciation Award.
Buchanan's miss from this year's list is a mystery. The senior Republican Congressman sits on the powerful House Ways and Means committee. There, Buchanan has a lead role in controlling U.S. House spending priorities.
However, Buchanan's miss might be less of an issue of power and more one of location. Buchanan's Congressional District 16 includes Sarasota, which sometimes winds up being left out of more mainstream Tampa Bay area political discourse.
Latvala's placing just outside the top 25 is also a bit of a surprise. Love the outcome or hate it, Latvala's 2019 Legislative committee assignments were all on education-related boards. He played an integral role in some of this year's most prominent conservative wins on public education including increasing per-pupil spending, revamping the state's Guardian Program to allow participating school districts to let certain staff members carry guns on campus and allowing general funds to help pay for school vouchers.
But Latvala might have lost points on his failure to usher in one of his biggest priorities. The Republican-controlled Legislature failed to take up Latvala's "Jordan's Law" that would have reformed the state's child welfare system to avoid cracks in the system that led to the death of a Largo boy at the hands of his mother after the state failed to remove him from her custody despite signs of trouble.
All four of this year's honorable mentions are worth watching into 2020. Follow the entire list here, on Facebook, and on Twitter with #Top25InTB.
In this article:#Top25InTB, Chris Latvala, Ed Hooper, Kimberly Overman, powerful politicians, Tampa Bay Most powerful politicians, TBMPP, Vern Buchanan
Written By Janelle Irwin Taylor
Janelle Irwin Taylor has been a professional journalist covering local news and politics in the Tampa Bay area since 2003. Most recently, Janelle reported for the Tampa Bay Business Journal. She formerly served as the sole staff reporter for WMNF News and previously covered news for Patch.com and various local neighborhood newsletters. Her work has been featured in the New York Daily News, Free Speech Radio News and Florida Public Radio and she's been interviewed by radio stations across the nation for her coverage of the 2012 Republican National Convention. Janelle is a die-hard news junkie who isn't afraid to take on big names in local politics, including Tampa Mayor Bob Buckhorn, the dirty business of trash and recycling in St. Pete and contentious issues surrounding transit. Her work as a reporter and radio host has earned her two WMNF awards including News Volunteer of the Year and Public Affairs Volunteer of the Year. Janelle is also a devoted wife and mother to three brilliant and beautiful daughters who are a constant source of inspiration and occasional blogging fodder.


This 1 bedroom apartment is located in Parame Centre-Rochebonne and sleeps 2 people. It has WiFi, parking nearby and a gym. The apartment is within walking distance of a beach.
Les Rochers Sculptes 3.4 km, Le Grand Aquarium 5.4 km, Cancale 12 km, Dinard 13 km, Le Mont Saint Michel 56 km..
The agent describes this apartment as an ideal holiday rental for the summer holidays. It is also good value for money. This apartment is located in Parame Centre-Rochebonne. The nearest airport is 78km away. It is set in a very convenient location, just 100 metres away from a beach.


text:
Dobrosława Miodowicz-Wolf, pseud. Mrówka (ur. 18 sierpnia 1953 w Krakowie, zm. 10 sierpnia 1986 na K2) – polska alpinistka i himalaistka, etnograf, pracowniczka Muzeum Etnograficznego w Warszawie. Córka polityka i działacza związkowego Alfreda Miodowicza oraz siostra polityka Konstantego Miodowicza, żona wspinacza Jana Wolfa. Zginęła w Karakorum podczas zejścia po próbie zdobywania szczytu K2.

Była instruktorem taternickim, od 1983 również trenerem alpinizmu.

Osiągnięcia wspinaczkowe

Tatry
Zaczęła się wspinać w 1970 roku i wkrótce przeszła wiele trudnych dróg w Tatrach Wysokich. W górach tych dokonała m.in. pierwszego zimowego wejścia filarem wschodniej ściany Zadniej Baszty (1972, z Januszem Mączką i Markiem Rusinowskim) oraz drogą Koguta na Mały Jaworowy Szczyt (1976, z mężem Janem Wolfem). Inne jej przejścia zimowe w Tatrach to nowa droga na Jaworowy Szczyt (1976) i wschodnia ściana Ganku (Galerii Gankowej), Łomnicy, Żółtej Ścianie i w masywie Młynarza, wytyczyła nowe drogi na Zamarłej Turni i Wołowej Turni.

Alpy i Kaukaz
W Alpach Miodowicz-Wolf wspinała się od 1976, kiedy dokonała drugiego przejścia drogą Guillota na Mont Blanc du Tacul. W tymże roku przeszła też drogę Philipp-Flamm na północno-zachodniej ścianie Punta Tissi w Dolomitach. W 1978 pokonała drogę Coturiera na północnej ścianie Aiguille Verte (z B. Sienicką-Kalmusową), z Maciejem Berbeką przeszła drogę Voie Major na wschodniej ścianie Mont Blanc. W kolejnym roku w ciągu czterech dni przeszła Drogę przewodników na północnej ścianie Petit Dru, zaś w Dolomitach pokonała Vinatzer na południowej ścianie Marmolada di Rocca oraz Via Paolo VI na Filarze Tofany.

W Kaukazie wspólnie z Anną Okopińską i Haliną Krüger-Syrokomską dokonały w 1977 pierwszego kobiecego przejścia drogi przez Deskę na północnej ścianie Ułłu Tau Czana.

Góry wysokie
W 1980 roku Miodowicz-Wolf zdobyła swój pierwszy siedmiotysięcznik – weszła na Szczyt Korżeniewskiej w Pamirze (7105 m n.p.m.). Trzy lata później wspięła się na Szczyt Komunizmu (7495 m). W 1984 wzięła udział w wyprawie na K2 w Karakorum i dotarła tam do wysokości 7350 m n.p.m. Powyżej granicy 8000 m wspięła się 14 lipca 1985, kiedy udało jej się dojść do wysokości 8050 m podczas samotnej próby wejścia na Nanga Parbat. W 1986 ponownie znalazła się pod K2 i była tam o krok od sukcesu. Jako jedyna uczestniczka swojej wyprawy brała udział w ataku szczytowym i 10 sierpnia osiągnęła tam wysokość ok. 8500 m. W trakcie ataku nastąpiło gwałtowne załamanie pogody. Podczas odwrotu Żebrem Abruzzi Dobrosława Miodowicz-Wolf pomagała innym wspinaczom, sama jednak zmarła z wyczerpania na linach poręczowych, na wysokości ok. 7100 m. Uratowało się tylko dwóch himalaistów uczestniczących tego dnia w akcji górskiej (Austriacy Kurt Diemberger i Willi Bauer). Wypadek ten był ostatnią częścią tragicznego sezonu 1986, kiedy pod K2 zginęło 13 wspinaczy, w tym Polacy Tadeusz Piotrowski i Wojciech Wróż.

Ciało Dobrosławy Miodowicz-Wolf zostało odnalezione i pochowane u podnóży K2 w roku 1987. W Polsce ma symboliczne miejsce pamięci na grobie rodziny na cmentarzu parafialnym w Końskich.

Upamiętnienie
W 2001 Anna Teresa Pietraszek zrealizowała dla TVP film dokumentalny o Dobrosławie Miodowicz-Wolf Za cenę życia.

Przypisy

Bibliografia

 Mariusz Sepioło: Himalaistki. Opowieść o kobietach, które pokonały każdy szczyt. Wydawnictwo Znak, 2017. .

Urodzeni w 1953
Zmarli w 1986
Ludzie urodzeni w Krakowie
Polscy wspinacze
Taternicy
Zmarli w górach

redpajama_set_name: RedPajamaWikipedia


Known as 'The Mother of Unit Trust', Dr Niki Shuhada Shukor has created icons in the financial services industry in the past 2 decades. In a conversation with Top 10 of Malaysia, Dr Niki, Founder and CEO of Life Success Resources, highlights her top consultants, her company's offerings and what keeps her motivated.
Born in Penang, raised in Perak, Dr Niki furthered her studies in Australia. "I came back and was job-hunting when I noticed an opportunity to fly with Malaysia Airlines," she explains. Soon after, she got married and accompanied her husband to London. Nevertheless, what spawned her interest in financial planning is unforgettable. "1992, in London, I saw good people sleeping on the streets as a result of losing their houses due to high interest rates. In winter, many died overnight due to extreme temperatures. It was so impactful that I made a silent decision to help people," she adds.
As friends noticed the shift from their spendthrift ways to accumulating assets upon returning, friends requested for tutorials for a fee. "Realising my passion in financial planning, a friend then suggested I join a financial institution marketing unit trust, and I did. I attended trainings, got licensed and became top in sales that year," she elaborates.
To date, Dr Niki has garnered over 180 awards as she creates icons in the industry. "Our consultants are now inspiring other financial planners," she adds. "Financial Planning has three important parts which are Create, Protect and Preserve," her husband, Hj Amirul shares. Also a Syariah Registered Financial Planner, he is the company's Managing Partner. "I continuously work on elevating the perception of the profession and it's currently the third sought-after profession by Malaysian graduates," says Dr Niki. Her show on Bernama Radio 'Bijak Wang Bersama Dr Niki' has seen her introduce the concept of financial planning to Malaysians.
"Our consultants are fully supported, trained and given the right system to follow," she shares. The firm's top financial consultants currently are Hj Amirul Shukri Bin Kadri, Hanita Binti Nulit, Kan Fong Wah, Syuhaidah Ahmad, Razeha Binti Koderi, Rose Iznan Riza Binti Mohd Tohit, Maimunah Baharum, Rozyta Binti Wahid, Nurzailis Binti Kassim, Asniza Binti Che Rose, Noor Shazlina Binti Sayuti and Idzral Izani Bin Jilani. Dr Niki heads Life Success Resources, a training company with a proven system to empower and nurture a mind-set for success, not limited to financial consultants. "I train teams and individuals from various backgrounds to excel personally and professionally," Dr Niki explains.
To date, clients include financial institutions, banks and organizations and Dr Niki also does personal mentoring. "I help them meet goals and be the best version of themselves," she says. When asked what motivates her, Dr Niki's response is heartwarming. "After twenty years, I still love winning as I enjoy making people go 'wow'. In Malaysia Airlines, I liked 'wow-ing' passengers and seeing their smiles when I go the extra mile. I'm inspired by adding value to others," she shares.
On balancing her life, Dr Niki keeps a diary to allocate time for eight areas taught in her trainings, which are health, career, family, finances, self-development, societal contribution, spirituality and happiness. "Your time is your life. Things focused on expand so no matter how busy, I arrange lunch with my husband three times a week and personal time with my children and helpers. Creating champions is a lifestyle relating to how efficiently we spend our time. We want self-fulfillment in everything we do, so scheduling is important," Dr Niki elaborates.
Her advices for youths include setting aside money on a monthly basis and accumulating assets in time. For the business-inclined, she shares the 'compound effect'. "Things done repeatedly well, or otherwise, will show up in future. Polishing your skills by attending trainings helps to achieve success and maintain progress. It's no use being talented but unmotivated. Some people I take in are probably considered a 'lost cause' but can be motivated to excel, hence my tagline 'Creating Champions'," she shares. Undoubtedly, Dr Niki's inspiring attitude and mind-set will inevitably lead to more success.
For more tips, Dr. Niki suggests visiting her website at www.nikishuhada.com, her Facebook account at Dr Niki Shuhada Shukor or Instagram accounts at @drnikishuhada or @drnikitraining.


Nutrition: 1: The process of taking in food and using it for growth, metabolism, and repair. Nutritional stages are ingestion, digestion, absorption, transport, assimilation, and excretion. 2: A nourishing substance, such as nutritional solutions delivered to hospitalized patients via an IV or IG tube.


WINCHESTER — State Rep. Greg Beumer has filed a bill to forgive thousands of dollars in delinquent property taxes and penalties owed by the local YMCA to Randolph County.
"I'm trying to follow the rules," said the county assessor, Beverly Fields. "The state doesn't allow me to do otherwise."
The YMCA, a non-profit organization, failed to file an application for property tax exemption after acquiring Camp Yale, an outdoor team-building and leadership-development center on a 30-acre wooded recreational park south of Winchester in White River Township. The facility includes a zip line, climbing walls and rope courses.
"Through an innocent error, the county did not receive the proper paperwork," said Beumer, R-Modoc. "The YMCA is really embarrassed by the entire situation. You can appreciate it's a significant amount of money for any non-profit, and it certainly is for the YMCA."
Beumer told The Star Press the taxes and penalties total about $8,000, though the county treasurer, Jane A. Grove, told The Star Press she believed the amount was only $4,663. There is also uncertainty over how late the application was filed: a couple of days or more than two years.
The legislator is proposing a state law that "allows a nonprofit corporation that meets certain conditions and that missed the applicable deadline to claim a property tax exemption for the 2014 and 2015 assessment dates to file an application to claim the exemption for those assessment dates." The legislation would require the county to forgive the debt, Beumer said.
Fields told The Star Press her hands were tied by current law.
"I believe somehow the YMCA was gifted that piece of land," she said. "The best I know, it was transferred to the YMCA on March, 21, 2014. I received nothing in this office on the White River property until June 6, 2016, when I got a form 136 requesting exempt status for two parcels in White River Township. My understanding is they got the tax bill in 2015."
She added: "I am following my rules. I bent over backwards to let the director of the YMCA know the paperwork had not yet been received and we needed updated paperwork. She went through Greg Beumer. By that time, they had owned it two years." The YMCA director was unavailable for comment.
Fields thinks the the bill, if enacted, could set a precedent that opens the door for other property owners to seek relief through Beumer if they fail to file form 136 on or before April 1 of the assessment year.
But Beumer said the assessor doesn't need to worry.
"This isn't unheard of in the General Assembly," he said. "I think nearly every year I've been there one or a couple of legislators have come forward, most recently a little league baseball group that acquired a piece of property but neglected to notify the county. The county can't willy-nilly forgive those taxes. We have to pass a resolution authorizing the county to forgive those taxes. It's rare, and we only really do this for non-profits."
The bill was referred to the House Ways and Means Committee, which has not yet heard it.


Spirit is a radical new approach to student life. Designed with the student in mind, and proven to boost school spirit, save time, and increase attendance at events.
Students, teachers, and community members download the Spirit app and are instantly connected to your extra-curricular world.
Students can see what events are going on, learn more about them, and when they get to the event? That's when the fun starts. Students check-in to events using their smartphones and earn points for attending.
Instead of clogging everyone's inbox with another email that doesn't concern them, let Spirit send relevant and timely messages.


text:
Q: In machine learning why most guys using random_state=42? I found many people using random_state=42 everywhere. why 42 so popular?

A: It's a reference to The Hitchhiker's Guide to the Galaxy.
And it makes your results much better ;)


text:
CALS News
CALS Home
You Decide
NC State Economist
Faculty Focus
CALSPack Strong
Gifts and Awards
Our Rich Heritage
Oh, Christmas Tree
December 23, 2019 Dee Shore
The world's most advanced Fraser fir tree seed orchard is at the Upper Mountain Research Station in Ashe County, the heart of North Carolina Christmas tree production.
It may not look impressive right now, but a 5.5-acre Christmas tree orchard at the Upper Mountain Research Station could have a big impact on the future of North Carolina's $86 million Christmas tree industry.
The trees are now just 2- to 4-feet tall, but as they mature over the next 10 years, they will yield Fraser fir seeds that grow into Christmas trees with characteristics that consumers and farmers want.
Jeff Owen, an NC State Extension Christmas tree specialist who helped with the orchard project, said that he expects the trees to grow faster and more uniformly. Not only that, they'll also keep their needles longer and hold up well through the holiday season.
How Lovely (and Uniform) Are Thy Branches
Fraser firs are among the country's five most popular types of Christmas trees. They're native to the Appalachian Mountains and grow particularly well in the high country around the research station.
Producers often use wild seed, but that presents challenges. As Owen explained, "Wild seed is highly variable. Growers would have one tree that was good quality, and its neighbor might not be very good at all."
An estimated 90% of North Carolina growers get most of the seedlings they plant from nurseries in the Pacific Northwest, according to Brad Edwards, an integrated pest management assistant with North Carolina Cooperative Extension in Ashe County.
What the growers need, Edwards added, is a reliable source of certified seeds – ones that have known parents and that are handled in ways that maintain their genetic purity. "Right now," he said, "there's no certified seed for Fraser fir."
The seed orchard will change that.
How Sturdy Are Thy Roots
The orchard "is the culmination of decades worth of research done through NC State's Christmas tree genetics program, led by Professor John Frampton," said Owen, of NC State's College of Natural Resources. "John retired this summer, and as the world's most advanced Fraser fir genetic resource, the orchard is his legacy."
Ultimately, Owen said, farmers will be able to select seeds from the orchards based on their parents' performance.
"A farmer will be able to say, 'I want trees with optimum needle retention,' and they can go and get seed from that grouping," he said. "Or maybe they're interested in having a more uniform growth of the tree or a shorter rotation. They can pick out those characteristics as well, because each parent is known."
Native to the Appalachian Mountains, the Fraser fir is among the nation's most popular Christmas trees.
Planning, developing and maintaining the orchard has been a group effort that began with Frampton more than 20 years ago.
Recognizing the value of these Fraser fir selections, Frampton brought together extension and research station personnel to get the improved germplasm into the hands of as many growers as possible, as soon as possible. CNR Research Specialist AnneMargaret Braham has also been instrumental.
The team decided there was no better place for the orchard than at the Upper Mountain Research Station. The station is in the heart of North Carolina's Christmas tree production area. In fact, it's in the nation's No. 1 county for Christmas tree production, Ashe County.
The station also has a strong history of carrying out a range of research instrumental in helping the state's industry grow to be the second-largest in the nation.
The orchard started with the planting of another tree species, the Canaan fir. The Canaan fir has what Owen termed a "more aggressive root system" that protects it from Phytophthora root rot, which is particularly problematic for Fraser firs.
Fifteen people, including growers, spent two days in 2018 grafting the rootstocks to what's called the scion – the above-ground parts – of selected Fraser firs.
The station's superintendent, Tracy Taylor, and his staff have played a crucial role in the orchard's progress. They provide the orchard's 1,400 trees the day-to-day care they need. "We take care of diseases and insects, wildlife, ground cover management, fertility – all of those things," he said.
Helping Thy Future Shine So Brightly
Owen believes that when it matures, the orchard will deliver "a huge savings for Christmas tree growers."
The average field takes 10 years to be fully harvested, he said. "We may be able to cut two years off that timeline, so that's 20% of the time. All of that puts money back in a grower's pocket, after they've made the long-term investment that it takes to grow a Christmas tree."
The grafts have been successfully established, and the trees are getting bigger.
"We've still got a long way to go," Owen said, "but we are going to baby this along and watch these trees grow – and to aim for the first seed harvest in 2030."
Learn more about North Carolina Christmas Trees on Extension's online video series Homegrown.
Christmas tree production
More From College of Agriculture and Life Sciences
A Petal for Your Thoughts?
A "Berry" Sweet CALS Love Story
A Salivating Super Vector and the Secrets that Lurk Within


lloyd.io - The "Open Web", my spin.
lloyd.io is the personal website of Lloyd Hilaiel, a software engineer who works for Team Ozlo and lives in Denver.
All the stuff you'll find here is available under a CC BY-SA 3.0 license (use it and change it, just don't lie about who wrote it). Icons on this site are commercially available from steedicons.com. Fonts used are available in Google's Web Font directory, and I'm using Ubuntu and Lekton. Finally, Jekyll is used for site rendering.
Finally, Atul, Pascal, and Stephen inspired the site's design. And in case you're interested, this site's code is available on github.
The "Open Web", my spin.
Later this week I'll be moderating a chat entitled "Implementing the open web" at gluecon in my home town, Denver.
The Open Web should support extreme gift economies, such as open source and Wikis, all the way to traditional free market entities, such as Amazon.com and Google. I call this Freedom of Social Forms; the tent is big enough to support many forms of social and economic organization, including ones we haven't imagined yet.
We must leave our philosophies around making a buck at the door. People are free to experiment with different business models all they like, from advertising to free tools with commercial consulting available, to whatever you can think up… People are free to build commercial and proprietary "derivative" work on top of the open web, and the platform is in no way geared to one model or another. The key here is that the "open web" attempts to serve all without bias, and in order to properly do so cannot in itself be owned nor governed by any small set of companies nor individuals, nor can it involve any technologies that infringe on the freedom of applications built on top of it.
Openness – Whether the protocols used are de facto or de-jure, they should either be documented with open specifications or open code. Any entity should be able to implement these standards or use this code to hook into the system, without penalty of patents, copyright of standards, etc.
Specifications OR code. Hear that? Quite forward thinking given the present state of SQL in the browser. At present, the code is the specification. I think this is extremely messy — Having "standards" where there is no specification — however who ever claimed that evolution was pretty? Look at a very nice bit of work that I've come across lately, JSONQuery – A means of performing sophisticated queries against JSON documents. But here's the odd part, The best "specification" I can find is that blog post. No real specifications, but a couple different implementations. So we could say Brad's forcing a mess on us here by allowing the code to be the specification – But my claim is that as technologies gain popularity, the BNF will get written – And you can't really write a specification until you've kicked the tires and actually seen it in action. And a specification needs a champion anyway, I think JSONRequest is a fine piece of work, but it's still just sitting there.
It enables "Third Party Innovation – without asking the powers that be for permission"
"Decentralization – …the web, an open system that anyone can plug into and create information at the end-points…"
"Third-Party Integration – At all layers of the system third-parties should be able to hook into the system, whether creating web browsers, web servers, web services, etc."
"Hackability – It should be easy to lash together and script the different portions of this web."
Both of these projects are clearly working to forward the open web. Both satisfy all of the criteria set forward above by Brad, and both are innovations that could push our web forward. But this isn't the point. The point is take a look at how Mozilla initially realized these features? Not inside but outside of the browser, as extensions.
However, we were still left with a chicken-or-egg problem: unless lots and lots of users installed an add-on, websites wouldn't have a significant audience for which to develop location-enabled services; and without lots of useful web content using the feature, users had no reason to install an add-on.
A select few companies have the resources to build a browser, while many folks in the community have vested interest in getting distinct new features into the browser (aka, the open web). However the current situation requires that browser vendors are the ones doing the innovating (because if it's not built into the browser, we "wouldn't have a significant audience for which to develop" using it). Further, the moment something gets into more than one browser it gains a momentum, a dangerous momentum. We're not free to change our minds. Have a look at SQL in the browser, and search around for alternatives to SQL client side storage. There's a uncertainty here around which way is the right way, but it may be too late: we already have SQLlite implementations in several major modern browsers.
There is no reasonable extension API that runs across all browsers.
This extension API that doesn't exist doesn't support extremely simple component installation, update, and revocation.
This extension API that doesn't exist isn't rich enough to allow something like SQLLite, or a JSON database, or identity mangement to be wholly implemented inside of it.
Thus finally we have enough to correctly patch the definition of the open web: The open web should allow decentralized extensions to it's own fabric. That is any rendering engine that is capable of rendering the open web must be augmentable with additional versioned APIs in a way that is seemless to the end user.
What did you say the open web was?
Documented – Every technology that is part of the open web is documented by either a rigorous standard or a reference implementation. This documentation is freely available.
Application Agnostic – The technologies included in the open web enable equally enable free or proprietary extensions or applications.
Simple to Use – The open web is a platform designed for applications targeted at an average person without significant technical knowledge – an overall principle is that none of the technologies that are part of the open web should preclude a presentation that achieves this goal of accessibility.
Extensible – The core technologies of the open web should be extensible at many different levels. That is it should be possible in a decentralized fashion and without any approval to write web applications, web services that serve information to applications, new web browsers that can render applications, or extensions that add new features to existing browsers.
In short, the Open Web to me is an idea. It is a set of technologies that are well documented, cost nothing, and allow for the creation of applications that are accessible to a wide audience. The open web is an extensible platform that allows equally for the creation of free or commercial applications. Finally the Open Web is designed to evolve, embracing at every level, the notions of extension and evolution.


BPU's mission is to focus on the needs of its customers, to improve the quality of life in the community while promoting safe, reliable and sustainable utilities. The Utility serves 127.5 square miles of Wyandotte County. Electric services are provided within the Kansas City, Kansas (KCK), area and water is supplied to KCK, as well as portions of suburban Wyandotte, Leavenworth and Johnson counties.
KCBPU - Energy Control Center has earned 1270 points for their team!


Chiropractic Center of Orange offers the most modern physical therapy treatments, rehabilitative exercises, acupuncture, and deep tissue massage.
Dr. Ujkic and his caring staff get you on the road to recovery fast with gentle short-term care that focuses on immediate relief and helping the patient recover from an injury.
We have individual treatment rooms for your privacy. On your first visit, a thorough history and examination will be performed including x-rays, if necessary. After careful analysis of your condition, if we determine that your condition can be helped by chiropractic approaches, your treatment will begin the very same day.
Dr. Ujkic knows that the spine is a lifeline to your body. It houses your nervous system, which controls and coordinates all the functions of your body. Dr. Ujkic believes virtually everyone can benefit from chiropractic care and he successfully helps pediatric to geriatric patients achieve the health they deserve.
Our clinic is accepted on most insurance health plans and we will gladly check your benefits for you. At the Chiropractic Center of Orange, we know you have choices when it comes to your health care.
The mission of our experienced doctors and caring staff is to give you the best treatment, care and relief for your health condition. Our natural approach to healing and wellness will allow you to achieve the highest level of health possible.
It is the intention/purpose of our office in Orange to support as many people in the community to help them in their quest for better health and to educate them about natural alternatives so they may in turn educate others.
Through education, we give each patient understanding of his or her specific condition and personal health picture. This will empower the patient to take control of their health rather than be controlled by existing unwanted health conditions. We seek to inspire, motivate, and coach our patients to achieve optimum health and well being.
If you are serious about your health and want to experience that most advanced alternative holistic methods to traditional medication and/or surgery, then the Chiropractic Center Of Orange can help you.
Most patients come to our office have one or two objectives in mind. Some come for symptomatic relief of pain. Others are interested in addressing the underlying cause of their problems, in addition to the symptoms that are currently affecting them. We do not see these objectives as mutually exclusive. The chiropractic approach is to focus on underlying structural problems that create pain and discomfort, and that ultimately improves the patient's quality of life.
Restoring or improving health and wellness is a holistic undertaking. The practice of chiropractic focuses on the totality of the human being. We see the big picture: we are able to provide relief, help you manage your condition, and work with you to restore optimum health and wellness. We will work together with you to meet your all your health needs.
It is important to us that you understand your condition and the ways in which chiropractic can help serve you.
We believe in educating you about your health and assist you in making good decisions for your well being.
Our philosophy and purpose is to provide the highest quality chiropractic care in an ethical, professional, and caring environment. Though our passion for education and service, we are able to contribute to healthier, happier, and more productive communities.
We gladly accept most health insurance plans. Individual in need of our services who lack insurance and who are worried about high cost charges by many other clinics need not worry. We have highly affordable rates and flexible payment plans allowing access to high quality care for you and your family.
If you have any questions or would like to learn more about chiropractic care, please contact us at (714) 639-3935.
Copyright © 2018 Chiropractic Center of Orange. All rights reserved.


text:
UKCLA July 29, 2020 Constitutional change, Devolution, United Kingdom, Wales
Gareth Evans: Debating Welsh Independence: The Political and Constitutional Pathways to a Referendum
On 15 July 2020, on the final day of sitting before summer recess, the Senedd considered a series of motions and amendments, in a debate on Wales' constitutional future. The original motion in this debate, tabled by Plaid Cymru, focussed on Welsh independence, and called on the current Welsh Government to seek the authority from Westminster to hold a binding referendum on independence during the next Senedd term, following the elections in May 2021. The motion failed to gather sufficient support on the day and was rejected by a vote of 9 For, 43 Against, and 1 Abstention. Instead, the Senedd voted in favour of a Welsh Labour amendment, which replaced the original Plaid Cymru motion with a commitment to Wales' "continuing membership of a reformed United Kingdom" – a commitment that in itself raises some interesting constitutional questions. While the motion on seeking an independence referendum failed, however, its tabling marks an important milestone in the evolution of the debate on Wales' constitutional future. A debate which recent surveys show includes an increase in support for independence.
In a report published by the Welsh Political Barometer poll in June 2020, 25 per cent of respondents indicated that they would vote in favour of Welsh independence, if a referendum were to be held on the subject tomorrow (a rise of four percentage points since January 2020). While these figures are notably short of a majority, the political debate in Wales is nevertheless evolving to include independence as a serious alternative to the constitutional status quo. On this point, recent reports also show that alongside those in clear support of independence in Wales, there is a broader spectrum of 'Indy-curious' voters, defined as "persuadable" to the idea of independence. Such changes in voter attitudes are also shown through the increase in activity of pro-independence groups in Welsh civil society. In May 2019, the streets of Cardiff played host to Wales' "first ever" march for independence – with similar marches having subsequently taken place across Wales. Non-partisan pro-independence groups, such as YesCymru, in seeking to emulate the influential Yes movement for independence in Scotland, have also reported a consistent rise in membership in recent months. While independence remains a minority position in Wales, it is a minority that is no longer confined to the fringes of the political debate on Wales' constitutional future.
Developing this point, this blog analyses the constitutional path a future Welsh Government would be required to navigate in seeking to hold a referendum on Welsh independence. However, before engaging in this discussion, the next section of the blog will briefly map the role of independence in the constitutional strategy of the main nationalist party in Wales – Plaid Cymru.
Plaid Cymru and Welsh Independence
In its 2019 Manifesto, Plaid Cymru laid forth its most detailed commitment for securing Welsh independence, which includes a plan to hold a referendum on the subject before 2030. This commitment to a roadmap for independence marks a significant development in the constitutional strategy of the party. Historically, Plaid Cymru has been reluctant to adopt the terminology of independence, and has for much of its history preferred the more nuanced constitutional goals of Welsh "freedom", or "full-national status" within the European Union. Indeed, it was not until 2001 that the party voted to formally include the term independence as part of its constitutional strategy. Even then, the proposals put forward were for a heavily nuanced form of independence, and made no mention of a timescale by when independence should be achieved.
More recently, spurred on by the entrenched political attitudes created by the Brexit process, as well as the steady rise in support for independence in Wales more generally, Plaid Cymru has moved to push independence forward as a salient issue in Welsh politics. In November 2019, the party set up an Independence Commission to consider in more detail its plans for an independent Wales. Speaking in June 2019, the leader of Plaid Cymru, Adam Price, set out a vision for an independent Wales in a new British confederation – a so-called "Benelux Britain" – whereby some sovereignty would be pooled in central institutions, and regulated by a Council of Ministers and a Confederal Court. However, while momentum appears to be gathering behind the cause of independence, Plaid Cymru – like the SNP in Scotland – remains committed to securing independence via lawful means, and within the existing requirements of UK constitutional law. Developing this point, the next sections of this blog identify the constitutional frameworks relevant to authorising a referendum on independence in Wales.
The Constitutional Path to a Referendum
Unlike the juxtaposition of abolishing the Senedd, there is no requirement in law for a referendum to take place in order for Wales to become an independent state (although there is arguably a constitutional requirement in favour of a referendum, based on issues of political legitimacy, as well as the precedent established in 2014 in Scotland). What is definitely required in order for Wales to lawfully become an independent state, however, is the agreement – be that explicit, implied or implicit – of the UK Parliament. Under Schedule 7A, Part 1, para 1(b) of the Government of Wales Act 2006, the "union of the nations of Wales and England" is a reserved matter and, as such, requires any lawful change to the union to have the consent of the UK Parliament.
In order for a Welsh Government to therefore lawfully hold a referendum on Welsh independence, it would first require a transfer of legislative competence from Westminster. This could come either by way of primary legislation passed by the UK Parliament, or by an Order in Council from the UK Government. The process of requesting the necessary powers to lawfully hold a referendum in Wales is broadly similar to the procedure followed in Scotland under the section 30 Order – the necessary statutory framework for which in Wales is contained under section 109 of the Government of Wales Act 2006. Due to final legal authority residing with Westminster, however, the UK Government – less the UK Parliament – is under no legal obligation to transfer such powers to the Senedd.
Securing a Referendum
Having set out the constitutional framework for seeking the legal authority to hold a referendum on independence in Wales, we now turn to consider the question of whether a mandate for Plaid Cymru at the Senedd Elections in May 2021, would equate to a constitutional mandate to allow for a referendum on independence. On this point, we find an interesting observation for analysis in a comment made in the 15 July debate by the former First Minister of Wales, Carwyn Jones [at 874]:
There is a constitutional convention already, which states that if a party stands on a manifesto commitment in favour of a referendum on independence, then there should be such a referendum. We've seen that in Scotland.
In testing this statement, we find that the implication of a mandate for Plaid Cymru holds very different chances of a referendum taking place, when viewed from a legal or political perspective. In law, for reasons already outlined, there exists no explicit obligation on the UK Government to authorise a section 109 Order to allow a future Welsh Government to hold a referendum on independence. Moreover, as argued in a previous blog by McCorkindale and McHarg, a legal challenge in favour of a referendum, based on a political mandate or a manifesto commitment, would likely fail due to the complex task of establishing voter intention behind such a mandate. Similarly, a legal challenge under the more standard grounds of judicial review also offers little chance of success.
In law, while there exists no explicit restriction under UK constitutional law outlawing the possibility of a referendum on independence taking place – in contrast to the Spanish Constitution – there is also no straightforward legal remedy or requirement on a UK Government to transfer to the Senedd the powers required to lawfully hold a referendum. Indeed, as recent events in Scotland suggest, a request to authorise a referendum on independence does not guarantee the agreement of the UK Government, and ultimately falls outside of the realm of legal adjudication. In the event that Plaid Cymru enters Welsh Government at the Senedd Elections in May 2021 – either as a single party or in a coalition – the task of securing a referendum in Wales will therefore depend not only on acting within the limits of UK constitutional law, but also of convincing the politics of the UK Government.
While the independence debate is gathering traction in Wales, levels of support for independence remain confined to a minority of the Welsh electorate. That this minority is steadily increasing in number, however, is a reflection of the changing nature of the political debate in Wales. Independence is now regularly considered as an option in debates on Wales' constitutional future, and looks set to continue as a key part of Plaid Cymru's election strategy in the run up to the Senedd Elections in May 2021. Going forward, however, the chances of a referendum on independence taking place will require campaigners to not only secure the support of the Welsh electorate, but also the cooperation of Westminster.
The author would like to thank Professor Alison Young and Dr Osian Elias for their helpful comments on a draft of this blog.
Dr Gareth Evans is a Lecturer in Law at the Hillary Rodham Clinton School of Law, Swansea University.
(Suggested citation: G. Evans, 'Debating Welsh Independence: The Political and Constitutional Pathways to a Referendum', U.K. Const. L. Blog (29th July 2020) (available at https://ukconstitutionallaw.org/))
Posted in Constitutional change, Devolution, United Kingdom, Wales and tagged Devolution, Wales, Welsh Independence. Bookmark the permalink.
Glasnost UK on July 29, 2020 at 3:27 pm
Don't share your notion, Gareth that Indy curious is making much traction with the Welsh electorate. You need to consider the state of the Welsh 'media', who they represent and what they stand for (https://marcussteaduk.wordpress.com/2020/06/21/the-welsh-media-in-crisis/).
More relevant IMO is the growth of Abolish The Welsh 'Parliament' parties, with public support that is considerably larger than the Welsh Indy lot, and again this is happening with no help from the Welsh 'media', who shamelessly use exclusion and censorship to silence them.
In short Welsh politics is a circus and the sheeple are mainly electing the clowns!
Welsh democracy died with the onset of the devolution, stolen by the Y Fro Gymraeg minority for their benefit.
The only way to end this dystopian world is to abolish the Welsh 'Parliament'.
John Hartigan on July 29, 2020 at 4:11 pm
Another disappointing article that simply accepts the cosy consensus of constitutional commentators whilst ignoring the more fundamental question of how constitutional change should be conducted in UK. Ignoring all precedent prior to the Edinburgh Agreement, it is simply assumed that Parliament not only has the power but also the right to legislate on such matters irrespective of whether there is a mandate to do so. This is very odd and the Edinburgh Agreement is distinctly questionable in this respect. There is no doubt that Welsh or Scottish independence would represent the most fundamental change in the U.K,s constitution- arguably impacting on its very name and existence. The 'monarchy question' puts this in its correct context. No-one would seriously expect that if Parliament voted tomorrow to abolish the monarchy that the country at large would accept it, no matter how legally valid. This is because there would have beEn no mandate for it. Such profound constitutional change requires consent – a mandate. Hence, devolution, House of Lords reform etc. have been universally accepted irrespective of whether people agreed with them or not. The same process is required for independence.
Iota on August 9, 2020 at 3:47 pm
(a) "The 'union of the nations of Wales and England' is a reserved matter and, as such, requires any lawful change to the union to have the consent of the UK Parliament."
(b) "In order for a Welsh Government to therefore lawfully hold a referendum on Welsh independence, it would first require a transfer of legislative competence from Westminster."
With respect, this is a non-sequitur. The second claim does not follow from the first.
Under the UK constitution a referendum would not make any change to the union unless it was followed up by implementing legislation, enacted in Westminster.
It's far from obvious that a (legally) non-binding consultation exercise would be beyond the competence of the Senedd.
In my view the Scottish government made a tactical error in 2012, when they conceded this point in the Edinburgh Agreement.
Jack Maxwell and Joe Tomlinson: Model students: why Ofqual has a legal duty to disclose the details of its model for calculating GCSE and A level grades
Christopher McCorkindale, Aileen McHarg and Tom Mullen: The Continuity Bill is Dead; Long Live the Continuity Bill – Regulatory Alignment and Divergence in Scotland Post-Brexit