text:
Young Grower of the Year
Horticulture Conference 2019
NZ NTWG
The long arm of competition law
Yes, there is a branch of law called competition law. Simply put, its aim is to make sure consumers get the best price, by making sure companies compete with each other in the fullest possible way.
HortNZ says drought threatens food supply
Water is vital for plants and trees to grow and New Zealand needs to better mitigate droughts that threaten our domestic supply of fresh fruit and vegetables, Horticulture New Zealand chief executive Mike Chapman says.
Seasonal labour a vital ingredient
Research New Zealand recently conducted a survey reporting on the impacts of the RSE scheme, where it has directly enabled:
Water storage to improve water standards
Environment Minister David Parker has announced that preliminary work has begun to create a new freshwater policy for New Zealand, building on the previous Government's work. He is quoted in media as saying: "I think [most] New Zealanders share an objective that their waterways should be clean enough to swim...
PM's prize focuses on the value of science in horticulture
The Plant & Food Research team that took on the devastating Psa-V disease and won, are the deserving recipients of the Prime Minister's top science prize, Horticulture New Zealand chief executive Mike Chapman says.
Horticulture – the quiet achiever
Danni van der Heijden wins 2018 BOP Young Fruitgrower of the Year competition
Horticulture New Zealand backs strong stance on stink bugs
Horticulture New Zealand President Julian Raine says the industry is encouraged to hear Biosecurity Minister Damien O'Connor say he won't let the brown marmorated stink bug anywhere near New Zealand.
Let's not waste precious soil and water
Linking compliance to consumer expectations
The way to grow a primary sector business is to provide the consumers of our food with what they want. But in recent years, the focus has been forced away from consumers and onto compliance. This creates the risk that having to put so much focus on compliance might take...
Access to Japan big win for horticulture in CPTPP
Access to Japan for New Zealand fruit is one of the big wins for horticulture from today's signing of the Comprehensive and Progressive Agreement for Trans-Pacific (CPTPP), says Mike Chapman, chief executive of Horticulture New Zealand, who is in Chile for the event.
Telling our food story
If a tree falls in a forest and no one is around to hear it, does it make a sound? In the past year, we have taken on the challenge of getting our food story out to urban New Zealand and our local and central government politicians.
Access to labour critical to horticulture's growth
Horticulture is growing rapidly and demand for workers is higher than the number of people available, says Mike Chapman, chief executive of Horticulture New Zealand.
Protecting New Zealand's borders – isolation is not enough
New Zealand's isolation from the rest of the world has, until recently, protected our country from many pests and diseases. By good luck and some good management we have kept a lot of the world's pests and diseases out of New Zealand.
Employment law plans could destroy trust and not fit for this era
Proposed employment law changes are a step backwards, and could destroy trust relationships between employers and employees and result in lower productivity, the horticulture industry says.
Horticulture New Zealand annual report 2018
Stormy weather and food supply
Let's protect our valuable soils, says Horticulture New Zealand
The need to protect New Zealand's best soils for growing healthy fresh fruit and vegetables is clear in the Our land 2018 report released today, says Horticulture New Zealand chief executive Mike Chapman.
Vocational training needs to change with the times
Biosecurity intelligence team a good move
Providing earlier warning of biosecurity risks by establishing a biosecurity intelligence team within government is a good idea, says Horticulture New Zealand chief executive Mike Chapman.
CPTPP a real win for New Zealand
Once you strip away all the figures, data, and modelling, there remains one essential fact: free trade deals generate incredible wealth for those who are party to them. In reality, free trade agreements have two main benefits besides tariff reductions.
Tax system not broken, so doesn't need to be fixed
New Zealand's tax system is admired for being simple, efficient, and fair, and Horticulture New Zealand chief executive Mike Chapman says adding new taxes will undermine this.
New features in the CPTPP
Today's trade deals are broadening their focus, from just addressing tariff reductions to including issues that are challenging the world today, such as protecting the environment, encouraging the growth of small to medium businesses, and fair treatment of workers.
Four vie for Horticulture New Zealand Board
Four candidates will vie for two positions on the Horticulture New Zealand Board as elections open today, with voting closing on 28 May 2018.
Where are the workers?
A question many industries in New Zealand are asking is "where are the workers?" While robotics and artificial intelligence are being touted to replace workers in many industries, this isn't going to happen en masse anytime soon.
Regional fuel tax will add to the cost of food
Regional fuel tax legislation, as it stands, is likely to add costs to fresh fruit and vegetables for consumers.
Horticulture: growth predictions and constraints
This week the Ministry for Primary Industries released its growth predictions. Modest growth is predicted for horticulture (including wine), with kiwifruit and apples predicted to be growth leaders. This comes after two years of exceptional growth: 10% in 2015, and 19.5% in 2016.
Vegetable industry cultivates healthy competition
Four of the finest young vegetable growers in New Zealand will go toe-to-toe in the Young Vegetable Grower of the Year competition in Christchurch on Friday, 18 May.
The balancing act of workplace relations
There has been significant maturing on New Zealand's labour law in recent years. The current legislation set about to achieve a greater degree of co-operation, trust, and fairness between employers and employees in the workplace. This seems to have worked, as there have been relatively few employment disputes that ended...
Twice the talent; bumper crop of winners from Young Vegetable Grower
For the first time in the competition's history, there are two winners of the Young Vegetable Grower of the Year competition: Esteban Ibanez and Gurjant Singh.
The rise of the flexitarians
There is a food revolution coming the way of farmers and growers, caused by consumers around the world changing their eating habits. Beef + Lamb NZ recently released an excellent report discussing this trend, along with what it means for the future of meat farming in New Zealand.
Central Otago Young Fruit Grower starts this Friday
Six of Central Otago's young fruit growers will face off in the Central Otago Young Fruit Grower of the Year competition in Cromwell on Friday, 25 May.
Water essential to feed New Zealand
We should value our workers, says 2018's Central Otago Young Fruit Grower
Hamish Darling from Moorpark and Mulberry Orchard, Cromwell has been named Central Otago Young Fruit Grower of the Year, following a day of intense competition in Cromwell today.
New directors elected to Horticulture New Zealand Board
Horticulture New Zealand's President Julian Raine was advised of the results by Electionz, which ran an independent voting process for the Board.
Saving our land
Yesterday, the Ministry for the Environment and Statistics New Zealand released the Our Land 2018 report which provides pertinent data about the state of land in New Zealand. The report highlights the importance of land to New Zealand's continued economic prosperity, as our two top export earners, primary production and...
Horticulture supports action plan for water quality
With the communication tools available today, consumers are able to access information about the origin of their food and make buying decisions based on how food producers show responsible and sustainable farming practices, Horticulture New Zealand chief executive Mike Chapman says.
Technology is not a magic bullet
New Zealand unemployment is currently at its lowest level since 2008. In some areas of the country there are very few people available for work, down to double digits, and this looks like it will continue for some time.
Do we really need another fuel tax?
Reducing congestion on our main roads and making roads safer is something we all want. How we make that happen is the hard question. A simple solution would be less cars on the road, but that isn't going to happen anytime soon.
Record entries for Hawke's Bay Young Fruitgrower competition
This year's entrants are:
Maintaining trade rules essential
New Zealand relies on trade for its economic survival. Without trade New Zealand would be a very different and a much poorer country. Successive New Zealand Governments have successfully worked to open up trading opportunities throughout the world and this continues today, with the Comprehensive and Progressive Agreement for Trans-Pacific...
Confusion reigns on fuel tax
"This tax comes into force in Auckland on Sunday, yet there is no system in place for off-road 'behind the farm gate' vehicles and machinery used by the 441 fruit and vegetable growers in Auckland that we represent," Chapman says.
Biocontrol our best defence
Winter, the risk season for the brown marmorated stink bug (BMSB), is finishing in the Northern hemisphere countries where it lives. In winter, this bug hibernates in dark and protected places such as houses, cars, machinery, and suit cases.
The best in the Bay
Lisa Arnold, an orchard operations assistant at Bostock NZ has emerged victorious against seven other entrants to be named Hawke's Bay's Young Fruit Grower of 2018.
Unionisation Bill – Nine Reasons Why Not
Horticulture New Zealand asks growers to renew funding
A levy rate of 14 cents per $100 of sales of the fruits and vegetables covered in The Commodity Levies (Vegetables and Fruit) Order is the principal funding mechanism to support Horticulture New Zealand's work for commercial fruit and vegetable growers.
BMSB Q&A
7th March 2018, Biosecurity
A quick list of frequently asked questions about BMSB.
Criminalising cartel conduct comes with risk
"A fantastic experience" - Nelson Young Fruit Grower 2018
Dillon Peterson of Hoddys Fruit Co has prevailed against five other entrants to be named Nelson Young Fruit Grower 2018 at an event in Richmond on Friday night.
Have your say on Samurai wasp
13th April 2018, Biosecurity
The Brown Marmorated Stink Bug (BMSB) Council has made an application to the Environmental Protection Authority (EPA) to release the Samurai wasp in the event of a BMSB incursion in New Zealand.
BMSB is one the biggest biosecurity threats facing New Zealand, and is frequently intercepted at our borders. It has the potential to cause significant economic damage to the horticulture industry, and would become a serious nuisance to home owners.
HortNZ director elections 2018
The Horticulture New Zealand constitution provides for a term of three years for elected directors with one third of directors retiring by rotation each year. This year two grower elected Directors will retire by rotation.
Consumer trend reports show that when consumers are asked to pay a premium price for their food, those consumers want to know why it's worth it; namely, where and how that food was grown. But New Zealand law hasn't quite caught up with this.
Nelson's best young grower decided this Friday
Six of Nelson's top young orchardists will vie for the title of Nelson Young Fruit Grower of the Year in Richmond this Friday, 6 July.
Sustaining our environment – best products from the best country
On World Environment Day, 5 June, Environment Minister David Parker and Agriculture Minister Damien O'Connor launched a primary sector action plan for water quality. This is the rural sector's commitment to environmental sustainability. It not only reports on progress to date - click here for an example of what individual...
2018 HortNZ AGM Papers
Inaugural Gisborne Young Grower contest this Thursday
The champion will progress to the Young Grower of the Year national final, to be held in Napier in August. There, they will join the winners of the Bay of Plenty, Central Otago, Hawke's Bay, and Nelson regional fruit-grower competitions, as well as two Young Vegetable Growers, to contend for...
What you need to know about Regional Fuel Tax
From 1 July 2018, regional fuel tax (RFT) of 10 cents/litre plus GST will be applied to petrol, diesel and their bio-variants, delivered to the Auckland region. This will affect your on and off-road vehicles and machinery powered by these fuels.
Matt Gomm named first Gisborne Young Fruit Grower
Some of the best young horticulturalists in Gisborne took part in the competition at Kaiaponi Farms yesterday. The event saw contestants facing a series of challenges designed to test their knowledge and skills around topics vital to the management of a successful orchard, including fencing, biosecurity, and tractor safety.
Submission to the education and workforce select committee on the employment relations amendment bill
9th May 2018, People
Good law-making missing on Regional Fuel Tax
The Government plans to implement, in conjunction with the Auckland Council, a fuel tax for Auckland on 1 July 2018. On behalf of our growers, HortNZ has submitted to the Parliamentary Select Committee considering the Land Transport Management (Regional Fuel Tax) Amendment Bill, written to Ministers, met with Ministers, met...
"As people around the world turn towards a more plant-based diet and start looking at the contribution food makes to their general health, horticulture is a growing industry that presents lots of opportunities," Horticulture New Zealand chief executive Mike Chapman says.
Employment relations (triangular relationships) amendment bill submission
11th May 2018, People
The impact of rising wages
New Zealand's economy is in good shape and growing. In the past, when the economy is growing, workers have gone after wage increases. The flow-on effect of this is that businesses put up their prices, inflation increases, the exchange rate increases making exports less profitable, and the Reserve Bank tightens...
Horticulture cautious on Zero Carbon Bill
Horticulture New Zealand has made a submission to the Ministry for the Environment on its Our Climate Your Say discussion paper for the Zero Carbon Bill. The submission is supported by Katikati Fruitgrowers Association Incorporated, Tomatoes New Zealand Incorporated, Potatoes New Zealand Incorporated, Vegetables New Zealand Incorporated, New Zealand Kiwifruit...
Join the campaign to Fix the Bill
Two Bills before Parliament will radically change how employment law operates in New Zealand. Both Bills are designed to increase the influence of unions and to change how the workforce interacts with employers. Horticulture New Zealand has recommended that neither of these Bills be made law and has made submissions...
Horticulture Conference is a must-attend
The Horticulture Conference will be held at the Air Force Museum in Christchurch from 23 to 25 July. The theme this year is 'Our Food Story', with the sessions tracing that story from the commercial vegetable gardens and fruit orchards, all the way through to the consumer.
Horticulture New Zealand's top five
Next week, Horticulture New Zealand has its Annual General Meeting (AGM), where we will focus on our top five activities including:
Young Growers to face off in Napier final
Seven finalists - the most the competition has ever seen - will go head to head at venues along the Napier waterfront. They will face a gauntlet of practical and theoretical challenges designed to test their knowledge and skills around running a successful growing business.
Click here for the HortNZ Board 2018 AGM Minutes Click here for the Notices of Motion 2019 Click here for the HortNZ Financials Summary 2019 Click here for the HortNZ Core Budget 2019 Click here for the HortNZ Priorities 2019/2020 Click here for the HortNZ Strategic Plan 2016-2025 Click here...
Does complexity produce quality?
A constant concern of all businesses, whether urban or rural based, is that running their business is becoming increasingly harder as profit margins become tighter. Complicated business processes and regulations do not necessarily produce the high quality produce that consumers demand.
Report shows need to protect Pukekohe food hub
A lettuce costing $5.54 – 58 percent more than today – and a big economic hit to Auckland could be the case if the value of fruit and vegetable production in Pukekohe isn't recognised, a report released at a function at Parliament today finds.
Greenhouse nutrient discharge good practice
25th January 2018, Grower Support
Balance needed between climate change mitigation and food production
In a letter published in the scientific journal, Nature Climate Change, entitled "Risk of increased food insecurity under stringent global climate change mitigation policy" the authors advise that their "analysis shows that by 2050, the potential for a sizable increase in the risk of hunger is higher in the (Representative...
Horticulture signs up to prestigious Ahuwhenua Trophy
Today, Horticulture New Zealand chief executive Mike Chapman and Kingi Smiler, Chairman of the Ahuwhenua Management Committee, signed an agreement that will see a horticulture Ahuwhenua Trophy in 2020. Each year the awards recognise a farming sector and horticulture will be on a third year rotation, after dairy (2018) and...
A measured approach to new age crop protection
Time to act on food security
It's time to act on food security New Zealand. We cannot take for granted that our fruit and vegetable growers can continue to feed New Zealand, as well as generate increasing export returns to benefit the economy.
Sustainability – the theme of the Young Grower final
Damning decision from district council
Earlier this week, the Tasman District Council decided not to support the development of Waimea Community Dam. This dam was going to supply water for urban households, support the area's thriving horticulture, and ensure minimum river flows during dry periods, sustaining the aquatic life in the river.
Horticulture submission not nonsense
"I thank National MP Nikki Kaye for calling out the comments about our submission from Labour MP Kieran McAnulty. We appeared in good faith to speak to our submission and were speechless when we were told we did not understand what the Bill proposes and then had to watch the...
Asian markets still open
Guest Blog – Richard Palmer
Vertical farming has limits
As part of her Kellogg Rural Leadership Programme, Horticulture New Zealand environmental policy advisor Rachel McClung has published a report, "Can vertical farming replace New Zealand's productive land to deliver high quality fruits and vegetables in the future?"
Vegetable growing in Sri Lanka
Seeing another country's vegetable growing industry first hand is not only fascinating, but it gives a point for comparison with our industry in New Zealand.
What's happening to the Aussie Dollar?
New President and Vice-President elected to HortNZ board
Mr O'Neil replaces Julian Raine, who has been President and Chairman for six years and who has made a significant contribution to horticulture for New Zealand. Mr Raine has stood down to pursue other business interests.
Will increased compliance promote growth?
The simple answer is, that depends on what the requirements are. First some facts. Over the past compliance for growers exponentially increased. A few examples include requirements under the Food Act, an avalanche of environmental requirements, and consents required for changing the types of vegetables that are grown.
Proposed temporary visa changes welcomed by horticulture
Addressing labour needs by region will lead to more productive primary industries, says Horticulture New Zealand chief executive Mike Chapman.
Water for all New Zealanders
An important issue facing New Zealanders is water – both availability and quality. Across rural New Zealand there are thousands of schemes and initiatives focused on water. This is unsurprising as humans, animals and plants need water to survive.
No workers, no fruit and veges
There have been three recent announcements of interest to horticulture:
Engaging the unemployed
The economists call it 'maximum sustainable employment'; that is apparently what we have reached in New Zealand, with a remarkably low 3.9% unemployment. This is below the Government's 4% target, and the lowest New Zealand has seen in 10 years. Apparently, it also equates to full employment.
What's the future for rural New Zealand?
My job takes me around the country, talking to people who are the backbone of New Zealand. They are worried and feel deserted by urban New Zealand. If you are a grower who feeds New Zealanders by producing fresh, healthy, locally grown vegetables or fruit, you can be forgiven for...
Employment law changes next year
The Government's Employment Relations Amendment Bill had its second reading in Parliament on Tuesday. Some key changes from its original form were identified in response to issues raised by businesses. It's likely that this law will come into force from May next year.
Trade risks to New Zealand
The growing tensions between the United States and China are casting an ominous shadow over world trade. The risks are now becoming the subject of frequent commentary in mainstream media, with reports telling of the jostling for position between these two world powers.
The facts about nitrogen in horticulture
Stuff recently gave space to an opinion piece from Glen Herud, a dairy farmer, which had a number of inaccurate references to the use of nitrogen in horticulture and horticulture practices in general (Stuff, December 4, 2018).
Horticulture will play a role in climate change mitigation
Recently, a number of reports about climate change mitigations have been released, including one from Motu called Land-use Change as a Mitigation Option for Climate Change. In my view, this report is required reading for the rural sector. It simply states in its conclusion:
Determination 2008/111
2nd February 2018, Natural Resources
Access and facilities for people with disabilities to a building providing kitchen and ablution facilities at an orchard in Kawarau Gorge Road, Central Otago
Guidance to Assist the Development of Seasonal Workers Accommodation
This document is intended as a general guide to assist the design and construction of seasonal workersaccommodation in the context of horticultural activities.
Natural Resources & The Environment
Grower free phone: 0508 467 869
or call: 04 472 3795
© Horticulture New Zealand 2015. All rights reserved. Level 4, Co-operative Bank Building, 20 Ballance Street, Wellington, 6011


On today's episode of God Help Us, I talk with Derek McNeil about systems theory, the idea that from our families to our workplaces to our global communities, we are shaped and influenced by the systems in which we live and work and play.
This is part two of three in a series of episodes focused less on particular theologies and more on being conscious of our relationships and relational dynamics. As you'll hear, Derek is an advocate for thoughtful engagement in gritty work that is deeply meaningful. He has his Master of Divinity from Fuller Theological Seminary and a PhD in counseling psychology from Northwestern University. I know him personally as a professor and mentor and in his role as the senior vice president of academics at The Seattle School of Theology and Psychology.
In this episode, I recommend the book Immunity to Change by Lahey and Kegan and Derek recommends everything by Meg Wheatley. You can find more content from Derek on The Seattle School's podcast, Text.Soul.Culture.
Subscribe to God Help Us via iTunes or Google Play or stream episodes here. Have a request for future episodes? Send me an email! Thanks for listening, and until next time, God help us.


Asahi Beer is brewed from quality ingredients by using selected cultured yeast and our advanced brewing techniques. Asahi beer has excellent richness, truly refreshing drinkability and satin smoothness all year round.You can enjoy the great taste of Asahi Beer!
Asahi, pronounced "Ah-Sah-Hee" means "Rising Sun" and is Japan's number one premium beer known for its clean, crisp and refreshing taste. It is brewed by an authentic Japanese recipe using only the finest ingredients.
Allergy Advice: Contains Barley Malt (Gluten).
Simply enter your details below and we will send you an e-mail when "Asahi Super Dry Beer (5%) (朝日啤酒)" is back in stock!


What is TINT. Unlimited? With TINT. Unlimited you get access to all plans and videos by subscribing on a monthly basis.
This plan includes 2 classes: Advancing the Bow & Bowspring vs Anusara. Designed for more advanced Bowspring practitioners, learn a challenging flow taught in Katas or sections. Perfect for those that want to refine their Bowspring practice and learn the latest advances.


The first utility-scale photovoltaic (PV) power station in Rwanda, built by Norwegian firm Scatec Solar, has begun test operations.
The launch of the trial production period, during which 25% of the plant will be in operation, was marked with a visit yesterday by the Norwegian prime minister, Erna Solberg.
The plant located on land belonging to the Agahozo-Shalom Youth Village is an 8.5MW installation and is the first grid-connected, utility-scale PV power plant to be built in East Africa. It is expected to increase the generating capacity of Rwanda's limited grid by around 7%.
The plant is expected to begin full operation in August.
Raymond Carlsen, CEO of Scatec Solar, said: "Our objective has been to bring the experience we've gained from our large projects in South Africa to other African nations.
Rwanda is aiming to boost its grid capacity from 110MW to 560MW by 2017 over the coming years, so that 50% of the population has access to power by that time. The country is formulating plans for a renewable energy feed-in tariff, which it is expected to launch this year.


text:
import testscenarios

from networking_odl.common import constants as const
from networking_odl.db import db
from networking_odl.journal import dependency_validations
from networking_odl.tests.unit import test_base_db

load_tests = testscenarios.load_tests_apply_scenarios

_NET_ID = 'NET_ID'
_NET_DATA = {'id': _NET_ID}
_SUBNET_ID = 'SUBNET_ID'
_SUBNET_DATA = {'network_id': _NET_ID}
_PORT_ID = 'PORT_ID'
_PORT_DATA = {'network_id': _NET_ID,
              'fixed_ips': [{'subnet_id': _SUBNET_ID}]}
_PORT_DATA_DUPLICATE_SUBNET = {
    'network_id': _NET_ID,
    'fixed_ips': [{'subnet_id': _SUBNET_ID},
                  {'subnet_id': _SUBNET_ID}]
}
_ROUTER_ID = 'ROUTER_ID'
_ROUTER_DATA = {'id': 'ROUTER_ID',
                'gw_port_id': 'GW_PORT_ID'}
_L2GW_ID = 'l2gw_id'
_L2GW_DATA = {'id': _L2GW_ID}
_L2GWCONN_ID = 'l2gwconn_id'
_L2GWCONN_DATA = {'id': _L2GWCONN_ID,
                  'network_id': _NET_ID,
                  'gateway_id': _L2GW_ID}
_TRUNK_ID = 'TRUNK_ID'
_SUBPORT_ID = 'CPORT_ID'
_TRUNK_DATA = {'trunk_id': _TRUNK_ID,
               'port_id': _PORT_ID,
               'sub_ports': [{'port_id': _SUBPORT_ID}]}
_BGPVPN_ID = 'BGPVPN_ID'
_SG_ID = 'SG_ID'
_SG_DATA = {'id': _SG_ID}
_SG_RULE_ID = 'SG_RULE_ID'
_SG_RULE_DATA = {'id': _SG_RULE_ID,
                 'security_group_id': _SG_ID}

def get_data(res_type, operation):
    if res_type == const.ODL_NETWORK:
        return [_NET_DATA]
    elif res_type == const.ODL_SUBNET:
        if operation == const.ODL_DELETE:
            return [[_NET_ID]]
        return [_SUBNET_DATA]
    elif res_type == const.ODL_PORT:
        # TODO(yamahata): test case of (ODL_port, ODL_DELETE) is missing
        if operation == const.ODL_DELETE:
            return [[_NET_ID, _SUBNET_ID]]
        return [_PORT_DATA, _PORT_DATA_DUPLICATE_SUBNET]
    elif res_type == const.ODL_ROUTER:
        return [_ROUTER_DATA]
    elif res_type == const.ODL_L2GATEWAY:
        return [_L2GW_DATA]
    elif res_type == const.ODL_L2GATEWAY_CONNECTION:
        return [_L2GWCONN_DATA]
    elif res_type == const.ODL_TRUNK:
        if operation == const.ODL_DELETE:
            return [[_PORT_ID, _SUBPORT_ID]]
        return [_TRUNK_DATA]
    elif res_type == const.ODL_BGPVPN:
        if operation == const.ODL_DELETE:
            return [[_NET_ID, _ROUTER_ID]]
        else:
            routers = []
            networks = []
            if operation == const.ODL_UPDATE:
                routers = [_ROUTER_ID]
                networks = [_NET_ID]
            return [{'id': _BGPVPN_ID, 'networks': networks,
                     'routers': routers,
                     'route_distinguishers': ['100:1']}]
    elif res_type == const.ODL_SG:
        return [_SG_DATA]
    elif res_type == const.ODL_SG_RULE:
        if operation == const.ODL_DELETE:
            return [[_SG_RULE_ID]]
        return [_SG_RULE_DATA]
    return [[]]

def subnet_fail_network_dep(net_op, subnet_op):
    return {'expected': 1,
            'first_type': const.ODL_NETWORK,
            'first_operation': net_op,
            'first_id': _NET_ID,
            'second_type': const.ODL_SUBNET,
            'second_operation': subnet_op,
            'second_id': _SUBNET_ID}

def subnet_succeed_network_dep(net_op, subnet_op):
    return {'expected': 0,
            'first_type': const.ODL_SUBNET,
            'first_operation': subnet_op,
            'first_id': _SUBNET_ID,
            'second_type': const.ODL_NETWORK,
            'second_operation': net_op,
            'second_id': _NET_ID}

# TODO(vthapar) add tests for l2gw dependency validations
class BaseDependencyValidationsTestCase(object):
    def test_dependency(self):
        db.create_pending_row(
            self.db_context, self.first_type, self.first_id,
            self.first_operation,
            get_data(self.first_type, self.first_operation))
        for data in get_data(self.second_type, self.second_operation):
            deps = dependency_validations.calculate(
                self.db_context, self.second_operation, self.second_type,
                self.second_id, data)
            self.assertEqual(self.expected, len(deps))

class SubnetDependencyValidationsTestCase(
        test_base_db.ODLBaseDbTestCase, BaseDependencyValidationsTestCase):
    scenarios = (
        ("subnet_create_depends_on_older_network_create",
         subnet_fail_network_dep(const.ODL_CREATE, const.ODL_CREATE)),
        ("subnet_create_depends_on_older_network_update",
         subnet_fail_network_dep(const.ODL_UPDATE, const.ODL_CREATE)),
        ("subnet_create_depends_on_older_network_delete",
         subnet_fail_network_dep(const.ODL_DELETE, const.ODL_CREATE)),
        ("subnet_create_doesnt_depend_on_newer_network_create",
         subnet_succeed_network_dep(const.ODL_CREATE, const.ODL_CREATE)),
        ("subnet_create_doesnt_depend_on_newer_network_update",
         subnet_succeed_network_dep(const.ODL_UPDATE, const.ODL_CREATE)),
        ("subnet_create_doesnt_depend_on_newer_network_delete",
         subnet_succeed_network_dep(const.ODL_DELETE, const.ODL_CREATE)),
        ("subnet_update_depends_on_older_network_create",
         subnet_fail_network_dep(const.ODL_CREATE, const.ODL_UPDATE)),
        ("subnet_update_depends_on_older_network_update",
         subnet_fail_network_dep(const.ODL_UPDATE, const.ODL_UPDATE)),
        ("subnet_update_depends_on_older_network_delete",
         subnet_fail_network_dep(const.ODL_DELETE, const.ODL_UPDATE)),
        ("subnet_update_doesnt_depend_on_newer_network_create",
         subnet_succeed_network_dep(const.ODL_CREATE, const.ODL_UPDATE)),
        ("subnet_update_doesnt_depend_on_newer_network_update",
         subnet_succeed_network_dep(const.ODL_UPDATE, const.ODL_UPDATE)),
        ("subnet_update_doesnt_depend_on_newer_network_delete",
         subnet_succeed_network_dep(const.ODL_DELETE, const.ODL_UPDATE)),
        ("subnet_delete_doesnt_depend_on_older_network_create",
         subnet_succeed_network_dep(const.ODL_CREATE, const.ODL_DELETE)),
        ("subnet_delete_doesnt_depend_on_older_network_update",
         subnet_succeed_network_dep(const.ODL_UPDATE, const.ODL_DELETE)),
        ("subnet_delete_doesnt_depend_on_newer_network_create",
         subnet_succeed_network_dep(const.ODL_CREATE, const.ODL_DELETE)),
        ("subnet_delete_doesnt_depend_on_newer_network_update",
         subnet_succeed_network_dep(const.ODL_UPDATE, const.ODL_DELETE)),
    )

def security_rule_fail_security_group_dep(sg_op, sgr_op):
    return {'expected': 1,
            'first_type': const.ODL_SG,
            'first_operation': sg_op,
            'first_id': _SG_ID,
            'second_type': const.ODL_SG_RULE,
            'second_operation': sgr_op,
            'second_id': _SG_RULE_ID}

def security_rule_succeed_security_group_dep(sg_op, sgr_op):
    return {'expected': 0,
            'first_type': const.ODL_SG_RULE,
            'first_operation': sgr_op,
            'first_id': _SG_RULE_ID,
            'second_type': const.ODL_SG,
            'second_operation': sg_op,
            'second_id': _SG_ID}

class SecurityRuleDependencyValidationsTestCase(
        test_base_db.ODLBaseDbTestCase, BaseDependencyValidationsTestCase):
    scenarios = (
        ("security_rule_create_depends_on_older_security_group_create",
         security_rule_fail_security_group_dep(const.ODL_CREATE,
                                               const.ODL_CREATE)),
        ("security_rule_create_depends_on_older_security_group_update",
         security_rule_fail_security_group_dep(const.ODL_UPDATE,
                                               const.ODL_CREATE)),
        ("security_rule_create_depends_on_older_security_group_delete",
         security_rule_fail_security_group_dep(const.ODL_DELETE,
                                               const.ODL_CREATE)),
        ("security_rule_create_doesnt_depend_on_newer_security_group_create",
         security_rule_succeed_security_group_dep(const.ODL_CREATE,
                                                  const.ODL_CREATE)),
        ("security_rule_create_doesnt_depend_on_newer_security_group_update",
         security_rule_succeed_security_group_dep(const.ODL_UPDATE,
                                                  const.ODL_CREATE)),
        ("security_rule_create_doesnt_depend_on_newer_security_group_delete",
         security_rule_succeed_security_group_dep(const.ODL_DELETE,
                                                  const.ODL_CREATE)),
        ("security_rule_update_depends_on_older_security_group_create",
         security_rule_fail_security_group_dep(const.ODL_CREATE,
                                               const.ODL_UPDATE)),
        ("security_rule_update_depends_on_older_security_group_update",
         security_rule_fail_security_group_dep(const.ODL_UPDATE,
                                               const.ODL_UPDATE)),
        ("security_rule_update_depends_on_older_security_group_delete",
         security_rule_fail_security_group_dep(const.ODL_DELETE,
                                               const.ODL_UPDATE)),
        ("security_rule_update_doesnt_depend_on_newer_security_group_create",
         security_rule_succeed_security_group_dep(const.ODL_CREATE,
                                                  const.ODL_UPDATE)),
        ("security_rule_update_doesnt_depend_on_newer_security_group_update",
         security_rule_succeed_security_group_dep(const.ODL_UPDATE,
                                                  const.ODL_UPDATE)),
        ("security_rule_update_doesnt_depend_on_newer_security_group_delete",
         security_rule_succeed_security_group_dep(const.ODL_DELETE,
                                                  const.ODL_UPDATE)),
        ("security_rule_delete_doesnt_depend_on_older_security_group_create",
         security_rule_succeed_security_group_dep(const.ODL_CREATE,
                                                  const.ODL_DELETE)),
        ("security_rule_delete_doesnt_depend_on_older_security_group_update",
         security_rule_succeed_security_group_dep(const.ODL_UPDATE,
                                                  const.ODL_DELETE)),
        ("security_rule_delete_doesnt_depend_on_newer_security_group_create",
         security_rule_succeed_security_group_dep(const.ODL_CREATE,
                                                  const.ODL_DELETE)),
        ("security_rule_delete_doesnt_depend_on_newer_security_group_update",
         security_rule_succeed_security_group_dep(const.ODL_UPDATE,
                                                  const.ODL_DELETE)),
    )

def port_fail_network_dep(net_op, port_op):
    return {'expected': 1,
            'first_type': const.ODL_NETWORK,
            'first_operation': net_op,
            'first_id': _NET_ID,
            'second_type': const.ODL_PORT,
            'second_operation': port_op,
            'second_id': _PORT_ID}

def port_succeed_network_dep(net_op, port_op):
    return {'expected': 0,
            'first_type': const.ODL_PORT,
            'first_operation': port_op,
            'first_id': _PORT_ID,
            'second_type': const.ODL_NETWORK,
            'second_operation': net_op,
            'second_id': _NET_ID}

def port_fail_subnet_dep(subnet_op, port_op):
    return {'expected': 1,
            'first_type': const.ODL_SUBNET,
            'first_operation': subnet_op,
            'first_id': _SUBNET_ID,
            'second_type': const.ODL_PORT,
            'second_operation': port_op,
            'second_id': _PORT_ID}

def port_succeed_subnet_dep(subnet_op, port_op):
    return {'expected': 0,
            'first_type': const.ODL_PORT,
            'first_operation': port_op,
            'first_id': _PORT_ID,
            'second_type': const.ODL_SUBNET,
            'second_operation': subnet_op,
            'second_id': _SUBNET_ID}

class PortDependencyValidationsTestCase(
        test_base_db.ODLBaseDbTestCase, BaseDependencyValidationsTestCase):
    scenarios = (
        ("port_create_depends_on_older_network_create",
         port_fail_network_dep(const.ODL_CREATE, const.ODL_CREATE)),
        ("port_create_depends_on_older_network_update",
         port_fail_network_dep(const.ODL_UPDATE, const.ODL_CREATE)),
        ("port_create_depends_on_older_network_delete",
         port_fail_network_dep(const.ODL_DELETE, const.ODL_CREATE)),
        ("port_create_doesnt_depend_on_newer_network_create",
         port_succeed_network_dep(const.ODL_CREATE, const.ODL_CREATE)),
        ("port_create_doesnt_depend_on_newer_network_update",
         port_succeed_network_dep(const.ODL_UPDATE, const.ODL_CREATE)),
        ("port_create_doesnt_depend_on_newer_network_delete",
         port_succeed_network_dep(const.ODL_DELETE, const.ODL_CREATE)),
        ("port_update_depends_on_older_network_create",
         port_fail_network_dep(const.ODL_CREATE, const.ODL_UPDATE)),
        ("port_update_depends_on_older_network_update",
         port_fail_network_dep(const.ODL_UPDATE, const.ODL_UPDATE)),
        ("port_update_depends_on_older_network_delete",
         port_fail_network_dep(const.ODL_DELETE, const.ODL_UPDATE)),
        ("port_update_doesnt_depend_on_newer_network_create",
         port_succeed_network_dep(const.ODL_CREATE, const.ODL_UPDATE)),
        ("port_update_doesnt_depend_on_newer_network_update",
         port_succeed_network_dep(const.ODL_UPDATE, const.ODL_UPDATE)),
        ("port_update_doesnt_depend_on_newer_network_delete",
         port_succeed_network_dep(const.ODL_DELETE, const.ODL_UPDATE)),
        ("port_create_depends_on_older_subnet_create",
         port_fail_subnet_dep(const.ODL_CREATE, const.ODL_CREATE)),
        ("port_create_depends_on_older_subnet_update",
         port_fail_subnet_dep(const.ODL_UPDATE, const.ODL_CREATE)),
        ("port_create_depends_on_older_subnet_delete",
         port_fail_subnet_dep(const.ODL_DELETE, const.ODL_CREATE)),
        ("port_create_doesnt_depend_on_newer_subnet_create",
         port_succeed_subnet_dep(const.ODL_CREATE, const.ODL_CREATE)),
        ("port_create_doesnt_depend_on_newer_subnet_update",
         port_succeed_subnet_dep(const.ODL_UPDATE, const.ODL_CREATE)),
        ("port_create_doesnt_depend_on_newer_subnet_delete",
         port_succeed_subnet_dep(const.ODL_DELETE, const.ODL_CREATE)),
        ("port_update_depends_on_older_subnet_create",
         port_fail_subnet_dep(const.ODL_CREATE, const.ODL_UPDATE)),
        ("port_update_depends_on_older_subnet_update",
         port_fail_subnet_dep(const.ODL_UPDATE, const.ODL_UPDATE)),
        ("port_update_depends_on_older_subnet_delete",
         port_fail_subnet_dep(const.ODL_DELETE, const.ODL_UPDATE)),
        ("port_update_doesnt_depend_on_newer_subnet_create",
         port_succeed_subnet_dep(const.ODL_CREATE, const.ODL_UPDATE)),
        ("port_update_doesnt_depend_on_newer_subnet_update",
         port_succeed_subnet_dep(const.ODL_UPDATE, const.ODL_UPDATE)),
        ("port_update_doesnt_depend_on_newer_subnet_delete",
         port_succeed_subnet_dep(const.ODL_DELETE, const.ODL_UPDATE)),
    )

def trunk_dep(first_type, second_type, first_op, second_op, result,
              sub_port=False):
    expected = {'fail': 1, 'pass': 0}
    port_id = _SUBPORT_ID if sub_port else _PORT_ID
    type_id = {const.ODL_PORT: port_id,
               const.ODL_TRUNK: _TRUNK_ID}
    return {'expected': expected[result],
            'first_type': first_type,
            'first_operation': first_op,
            'first_id': type_id[first_type],
            'second_type': second_type,
            'second_operation': second_op,
            'second_id': type_id[second_type]}

class TrunkDependencyValidationsTestCase(
        test_base_db.ODLBaseDbTestCase, BaseDependencyValidationsTestCase):
    scenarios = (
        ("trunk_create_depends_on_older_port_create",
         trunk_dep(const.ODL_PORT, const.ODL_TRUNK,
                   const.ODL_CREATE, const.ODL_CREATE, 'fail')),
        ("trunk_create_doesnt_depend_on_newer_port_create",
         trunk_dep(const.ODL_TRUNK, const.ODL_PORT,
                   const.ODL_CREATE, const.ODL_CREATE, 'pass')),
        ("trunk_create_doesnt_depend_on_port_update",
         trunk_dep(const.ODL_TRUNK, const.ODL_PORT,
                   const.ODL_CREATE, const.ODL_UPDATE, 'pass')),
        ("trunk_create_doesnt_depend_on_newer_port_delete",
         trunk_dep(const.ODL_TRUNK, const.ODL_PORT,
                   const.ODL_CREATE, const.ODL_DELETE, 'pass')),
        # TODO(vthapar): add more/better validations for subport
        # trunk update means subport add/delete
        ("trunk_update_depends_on_older_trunk_create",
         trunk_dep(const.ODL_TRUNK, const.ODL_TRUNK,
                   const.ODL_CREATE, const.ODL_UPDATE, 'fail', True)),
        ("trunk_update_depends_on_older_port_create",
         trunk_dep(const.ODL_PORT, const.ODL_TRUNK,
                   const.ODL_CREATE, const.ODL_UPDATE, 'fail', True)),
        ("trunk_update_doesnt_depend_on_newer_port_create",
         trunk_dep(const.ODL_TRUNK, const.ODL_PORT,
                   const.ODL_UPDATE, const.ODL_CREATE, 'pass', True)),
        ("trunk_update_doesnt_depend_on_port_update",
         trunk_dep(const.ODL_TRUNK, const.ODL_PORT,
                   const.ODL_UPDATE, const.ODL_UPDATE, 'pass', True)),
        ("trunk_update_doesnt_depend_on_newer_port_delete",
         trunk_dep(const.ODL_TRUNK, const.ODL_PORT,
                   const.ODL_UPDATE, const.ODL_DELETE, 'pass', True)),
        # trunk delete cases
        ("trunk_delete_depends_on_older_trunk_create",
         trunk_dep(const.ODL_TRUNK, const.ODL_TRUNK,
                   const.ODL_CREATE, const.ODL_DELETE, 'fail', True)),
        ("trunk_delete_depends_on_older_trunk_update",
         trunk_dep(const.ODL_TRUNK, const.ODL_TRUNK,
                   const.ODL_UPDATE, const.ODL_DELETE, 'fail', True)),
        ("trunk_delete_doesnt_depend_on_older_port_create",
         trunk_dep(const.ODL_PORT, const.ODL_TRUNK,
                   const.ODL_CREATE, const.ODL_DELETE, 'pass')),
    )

def l2gw_dep(first_type, second_type, first_op, second_op, result):
    expected = {'fail': 1, 'pass': 0}
    type_id = {const.ODL_NETWORK: _NET_ID,
               const.ODL_L2GATEWAY: _L2GW_ID,
               const.ODL_L2GATEWAY_CONNECTION: _L2GWCONN_ID}
    return {'expected': expected[result],
            'first_type': first_type,
            'first_operation': first_op,
            'first_id': type_id[first_type],
            'second_type': second_type,
            'second_operation': second_op,
            'second_id': type_id[second_type]}

class L2GWDependencyValidationsTestCase(
        test_base_db.ODLBaseDbTestCase, BaseDependencyValidationsTestCase):
    scenarios = (
        ("L2GWConn_create_depends_on_older_network_create",
         l2gw_dep(const.ODL_NETWORK, const.ODL_L2GATEWAY_CONNECTION,
                  const.ODL_CREATE, const.ODL_CREATE, 'fail')),
        ("L2GWConn_create_depends_on_older_L2GW_create",
         l2gw_dep(const.ODL_L2GATEWAY, const.ODL_L2GATEWAY_CONNECTION,
                  const.ODL_CREATE, const.ODL_CREATE, 'fail')),
        ("L2GWConn_create_doesnt_depend_on_newer_network_create",
         l2gw_dep(const.ODL_L2GATEWAY_CONNECTION, const.ODL_NETWORK,
                  const.ODL_CREATE, const.ODL_CREATE, 'pass')),
        ("L2GWConn_create_doesnt_depend_on_newer_L2GW_create",
         l2gw_dep(const.ODL_L2GATEWAY_CONNECTION, const.ODL_L2GATEWAY,
                  const.ODL_CREATE, const.ODL_CREATE, 'pass')),
    )

# TODO(vthapar): Refactor *_dep into a common method
def bgpvpn_dep(first_type, second_type, first_op, second_op, result):
    expected = {'fail': 1, 'pass': 0}
    type_id = {const.ODL_NETWORK: _NET_ID,
               const.ODL_ROUTER: _ROUTER_ID,
               const.ODL_BGPVPN: _BGPVPN_ID}
    return {'expected': expected[result],
            'first_type': first_type,
            'first_operation': first_op,
            'first_id': type_id[first_type],
            'second_type': second_type,
            'second_operation': second_op,
            'second_id': type_id[second_type]}

class BGPVPNDependencyValidationsTestCase(
        test_base_db.ODLBaseDbTestCase, BaseDependencyValidationsTestCase):
    scenarios = (
        ("bgpvpn_create_doesnt_depend_on_older_network_create",
         bgpvpn_dep(const.ODL_NETWORK, const.ODL_BGPVPN,
                    const.ODL_CREATE, const.ODL_CREATE, 'pass')),
        ("bgpvpn_create_doesnt_depend_on_newer_network_create",
         bgpvpn_dep(const.ODL_BGPVPN, const.ODL_NETWORK,
                    const.ODL_CREATE, const.ODL_CREATE, 'pass')),
        ("bgpvpn_create_doesnt_depend_on_older_router_create",
         bgpvpn_dep(const.ODL_ROUTER, const.ODL_BGPVPN,
                    const.ODL_CREATE, const.ODL_CREATE, 'pass')),
        ("bgpvpn_create_doesnt_depend_on_newer_router_create",
         bgpvpn_dep(const.ODL_BGPVPN, const.ODL_ROUTER,
                    const.ODL_CREATE, const.ODL_CREATE, 'pass')),
        ("bgpvpn_update_depends_on_older_bgpvpn_create",
         bgpvpn_dep(const.ODL_BGPVPN, const.ODL_BGPVPN,
                    const.ODL_CREATE, const.ODL_UPDATE, 'fail')),
        ("bgpvpn_update_depends_on_older_network_create",
         bgpvpn_dep(const.ODL_NETWORK, const.ODL_BGPVPN,
                    const.ODL_CREATE, const.ODL_UPDATE, 'fail')),
        ("bgpvpn_update_doesnt_depend_on_newer_network_create",
         bgpvpn_dep(const.ODL_BGPVPN, const.ODL_NETWORK,
                    const.ODL_UPDATE, const.ODL_CREATE, 'pass')),
        ("bgpvpn_update_depends_on_older_router_create",
         bgpvpn_dep(const.ODL_ROUTER, const.ODL_BGPVPN,
                    const.ODL_CREATE, const.ODL_UPDATE, 'fail')),
        ("bgpvpn_update_doesnt_depend_on_newer_router_create",
         bgpvpn_dep(const.ODL_BGPVPN, const.ODL_ROUTER,
                    const.ODL_UPDATE, const.ODL_CREATE, 'pass')),
        # bgpvpn delete cases
        ("bgpvpn_delete_depends_on_older_bgpvpn_create",
         bgpvpn_dep(const.ODL_BGPVPN, const.ODL_BGPVPN,
                    const.ODL_CREATE, const.ODL_DELETE, 'fail')),
        ("bgpvpn_delete_depends_on_older_bgpvpn_update",
         bgpvpn_dep(const.ODL_BGPVPN, const.ODL_BGPVPN,
                    const.ODL_UPDATE, const.ODL_DELETE, 'fail')),
        ("bgpvpn_delete_doesnt_depend_on_older_network_create",
         bgpvpn_dep(const.ODL_NETWORK, const.ODL_BGPVPN,
                    const.ODL_CREATE, const.ODL_DELETE, 'pass')),
        ("bgpvpn_delete_doesnt_depend_on_older_router_create",
         bgpvpn_dep(const.ODL_ROUTER, const.ODL_BGPVPN,
                    const.ODL_CREATE, const.ODL_DELETE, 'pass')),
    )

redpajama_set_name: RedPajamaGithub


text:
Home Asian News India, China fail to decide date for next round of military talks
India, China fail to decide date for next round of military talks
India and China have been unable to agree on a date for the next round of military talks on disengagement and de-escalation in the Ladakh sector because of Beijing's steadfast opposition to New Delhi's proposal that all remaining friction points on the Line of Actual Control (LAC) be handled in one go.
Since the 13th round of talks between senior military commanders of the two sides was held at the Chushul-Moldo border meeting point on October 10 last year, the Indian side has sent several proposals for the next round of talks along with agenda items, people familiar with the matter said on condition of anonymity.
In these proposals, the Indian side maintained that all friction points between Depsang and Chumar should be collectively tackled in the talks between the military commanders so that there can be comprehensive disengagement and de-escalation in the Ladakh sector of the LAC, the people said.
"The Chinese are not agreeing to this. Their response to every proposal from the Indian side has been different. Their goalposts keep changing and we aren't even sure which of their proposals should be taken seriously," one of the people cited above said on condition of anonymity.
Beijing's dithering has continued despite a decision made at the last meeting of the India-China Working Mechanism for Consultation and Coordination (WMCC) on border affairs on November 18 that the 14th round talks between military commanders should be held at "an early date to achieve the objective of complete disengagement from all the friction points along the LAC…in accordance with the existing bilateral agreements and protocols".
At the 13th round of talks between military commanders, the people said, the two sides were close to forward movement on disengagement at Hot Spring. However, the Chinese side was represented by the deputy to the corps commander, who stayed away, and he was not authorised to make a decision, the people added.
A statement issued by India after the last talks noted that "the Indian side…made constructive suggestions for resolving the remaining areas but the Chinese side was not agreeable and also could not provide any forward-looking proposals".
These tactics adopted by China, coupled with mounting evidence of the People's Liberation Army (PLA) beefing up infrastructure, roads, bridges, helipads, dual-use airports and missile and air defence positions on its side in Ladakh sector, has forced the Indian security establishment to conclude that the Chinese side is not serious about the negotiations.
"They seem intent on dragging this process out. They aren't serious about disengagement," a second person said, referring to the Chinese side's responses to the agenda items communicated by the Indian side.
Tens of thousands of Indian and Chinese troops have dug in for the second successive winter in Ladakh sector, with no immediate signs of an end to the standoff that began in May 2020 and resulted in the first fatalities along the LAC since 1975. Twenty Indian soldiers and at least four Chinese troops were killed in a brutal clash at Galwan Valley in June 2020.
The two sides withdrew frontline troops at Pangong Lake and Gogra last year after several rounds of talks, but there has been no headway in disengagement at other friction points since August 2021. India has linked the normalisation of overall ties with China to the resolution of the standoff.
The latest evidence of PLA settling in for long haul was satellite imagery showing a new bridge being built to link the north and south banks of Pangong Lake in order to drastically cut down the time needed to deploy large numbers of troops from positions in depth to key friction points. The Chinese side has also built or improved roads and bridges in multiple sectors, including repaving existing roads constructing alternate routes.
The area between Depsang and Chumar has several friction points. PLA troops have sought to block Indian patrols for more than two years in the strategic Depsang region, some 30 km south of Daulat Beg Oldi, which is home to a key airbase. Depsang also witnessed a three-week-long standoff in 2013.
At Chumar, the key problem has been Chinese construction activities around Chepzi-Chumar road. This area too witnessed a brief face-off in 2014 that began on the eve of Chinese President Xi Jinping's visit to India.
Another friction point is Demchok, which too witnessed a standoff in November 2016.
Rezaul H Laskar is the Foreign Affairs Editor at Hindustan Times. His interests include movies and music.
india china talks
ladakh sector of lac
lione of actual control
military talks on ladakh standoff
Previous articleTRS MLA son quizzed over family's suicide
Next articleIndia dismisses Pakistan's fresh offer to host SAARC summit this year
Andhra Pradesh detects first case of Omicron variant; national tally touches...
Petrol bomb hurled at car of Hindu outfit functionary
1.29 bn Covid-19 vaccines given to states so far, 216 mn...
PM Modi to take part in National Youth Festival, asks for...
Bengaluru: Ugandan woman with 1kg of synthetic drugs arrested, says NCB
'Cast 1 crore votes to party, get liquor at ₹70': Andhra...
INS Vela: Navy to get 4th Scorpene-class submarine today. All you...
Centre terms reports of using expired Covaxin 'misleading'
Atal Bihari Vajpayee: Former PM's 97th birth anniversary today
Aspirational districts get exemption from new engineering college moratorium

redpajama_set_name: RedPajamaCommonCrawl


SIT's New Zealand Certificate in Health and Wellbeing (social and community services) (Level 4) with strand in Social Services is a great place to start if you are considering a career in the areas of social work, community work, youth work, counselling or iwi social services. In this challenging but highly rewarding programme, students examine aspects of their own lives and each others, as they develop self-awareness and skills as practitioners. Small class sizes and experienced, approachable staff ensure a supportive classroom environment.
SIT also offers specialised courses in the areas of Mental Health at both Invercargill and Christchurch campuses. These are ideal for people who are already working in the industry or looking to gain further qualifications or specialise.
SIT's School of Social Services has an excellent reputation with employers, with many coming directly to SIT when they are recruiting new staff. Feedback from past Social Services graduates is overwhelmingly positive and students often express amazement at the positive changes they have been able to make in their own lives, and the lives of their clients. See below for graduate profiles.
Graduates of the Applied Practice context will meet the qualification outcomes in a programme which includes a pertinent practicum of more than 200 hours.
Graduates of the Mental Health and Addiction Support strand will be able to work alongside people, family and/or whanau in a mental health addiction setting to support autonomy by using tools and strategies to foster hope, support recovery and build resilience.
Social Services aims to improve the lives of people from all walks of life. It is a diverse, challenging and stimulating career option with many specialty areas such as drug and alcohol addiction support, child protection, violence, community development and disability support.
The National Certificate in Social Services provides a solid foundation to continue further tertiary studies in this field to gain professional qualifications in areas such as social work, counselling and social sciences.
"Social services was amazing - a real life changing journey. It was actually more than what I thought. My expectations were high but when I got into it, I learned a lot about myself," says Christina, a recent graduate of the SIT Certificate in Social Services and current student in the National Certificate in Mental Health and Addiction Support.
Christina Clark entered the Certificate in Social Services (Level 4) after having a long association with caregiving. Her parents were caregivers for Child Youth and Family which meant they had from four to six kids in the house at any one time on an emergency basis. "I got to see that side of things, and had the passion to get involved and study and make a career out of it."
A mix of the zero fees scheme and the training and skills delivered through the Certificate in Social Services drew Christina to study at SIT. During her year of Social Services Certificate in 2013 she gained a placement at Number 10 – which has now turned into an extended placement again for 2014 as Christina continues to study the SIT National Certificate in Mental Health and Addiction Support. Christina has been offered a full time 30 hour a week role at Number 10 as a Youth Worker while she studies towards her Bachelor of Social Work in 2015.
The personal journey Christina took through undertaking the courses was a memorable aspect. "Social services were amazing - a real life changing journey. It was actually more than what I thought. My expectations were high but when I got into it... I learned a lot about myself," says Christina.
The most enjoyable aspect of the programme was the theories learned and the ability to put them into practice through the placements organised by SIT. "We also bring these experiences back to the classroom and enjoy bouncing off ideas with other people," says Christina.


text:
green mountain grill prime plus review
So I powered down the cooker, and after the shutdown/cooldown cycle was complete, I cleaned out the firepot, blew out the sawdust, and tried again. Click Here To Learn Why You Want To Be In The Pitmaster Club. Pellets burn pretty efficiently and don't produce a ton of waste, but the ash does build up. Guide Review - Green Mountain Jim Bowie Pellet Grill Green Mountain Grills has one of those typical stories. Like what you're reading? Tried to turn the temp down to 150 and then to blower mode. It is beautifully designed, completely portable, and much easier to set up for 2-zone cooking than any round kamado. I gotta say, it's pretty cool to set a pork shoulder on your smoker, fill the hopper with wood pellets, then disappear for a few hours, monitoring the pellet level, cooker temp, and meat temp from your phone. Or if it's -5°F in Vermont and you need to burn more pellets to maintain the cooker's set temp, you can set/calibrate the auger to run faster. I was in such a hurry, I forgot to turn off the Fireboard! We usually do this test before cooking any food, but I wanted to do it after a few cooks to see how Mr. Boone's temps held up in the long run. I have been using the brand new one for a month and a half and it works flawlessly. Just something to keep in mind. One last nit to pick: there was a slight gap between the lid and the cookbox that leaked smoke. Click here to learn more about benefits to membership. Compared to Daniel Boone Choice, DB Prime also comes with a USB charging port, viewing windows in both the grill lid and pellet hopper, a larger pellet hopper, a storage shelf in the bottom of the rolling cart, along with more upgrades and extras detailed below. 99 Otherwise, the standard lid is made of slightly thicker 13 gauge enameled steel. It's a highly affordable grill with some of the best features you can find, such as the ability to check on your grill … I figured why not go all in and smoke that beef into pastrami? YOU NEED ONE! Keep all … Green Mountain claims it provides faster startups, better temperature control, and greater pellet fuel economy. Just below the latch, you see the stainless handle, which toggles down and out of the way when not in use, a nice touch. The probe at right front (labeled Smoker) read a bit cooler, around 275°F, and the probe at left center (labeled Channel 3) read a bit hotter, around 325°F. Cleaned it AGAIN. I've owned it for about a year. But I know some folks who love this sort of automation, and the GMG app provides it. I bought one 6 years ago and had nothing but trouble. I'd already made corned beef for St. Patrick's Day using Meathead's recipe. The move towards WiFi will be interesting. He delivered the new one and the auger didn't work right out of the box. Of course, a WiFi connection is never foolproof (more details below), but it's a welcome addition to outdoor cooking technology. That's customer service. I cranked it! I dialed the heat back down to 350°F so I wouldn't burn the hell out of my pizza. Kick your taste buds into a new dimension! But I had no problems when loading Mr. Boone's side and front shelves up with trays full of 30+ pounds of meat to smoke. The controller went through its startup cycle and the cooker heated up to 150°F. Period. The temperature probe to monitor your cooking meat has been replaced 3 times and has yet to work on either grill. Along the bottom of the Home screen, you see buttons for Profiles (the same ones just described), Recipes, and Settings. Green Mountain Grill's Jim Bowie Review By Matt Frampton on February 11, 2013 No Comment. You can get the Daniel Boone with an optional stainless steel lid constructed of 14 gauge steel. Plus pellet-smoked meat rarely comes out super smoky tasting. All probes were simply clipped to the grill grates in those positions. Reviewed in the United States on September 30, 2018, I did 2 "burn ins" and went to do my first real food good. © 1996-2020, Amazon.com, Inc. or its affiliates. Don't waste your money, it's a horrible value. Before the very first cook, Green Mountain recommends you do a 30-minute burn in at 350°F to burn off any manufacturer residue. For another $200, the DB Prime gets you onboard WiFi, which allows you to remotely control and monitor the cooker from your home WiFi network or anywhere you can get an internet connection, using GMG's "server mode." GMG is not worth the money. Around 6:30pm, the grill's readout on the digital controller was 300°F, as set, and the probe clipped to the right back of the cooker (labeled Steak) also read about 300°F. The pellet hopper has an auger at the bottom that feeds pellets to a firepot, where the pellets are ignited by a hot rod igniter. GrillGrates(TM) amplify heat, prevent flareups, make flipping foods easier, kill hotspots, flip over to make a fine griddle, and can be easily rmoved from one grill to another. We extend this right to anyone, EU resident or not. Four-way venting means it's easy to set up for two zone cooking with more control than single vent Kamado grills. Damn, were they tasty. The Settings button allows you to update the WiFi firmware, connect to your home network, set the temp displays to °F or °C, and monitor multiple GMG grills at once. Why stink up the house deep frying and spatter all over? Recently I did a full breakdown between these, someone … Buy Now and Get $75 OFF Sale Price and a FREE Rotisserie Attachment!. He was ready. Reviewed in the United States on July 14, 2019. Black Friday Bonanza! The front shelf will also fold down instead of being stationary, and instead of a traditional metal igniter in the firepot, DB Prime Plus will have a ceramic igniter, which typically lasts longer. It also analyzes reviews to verify trustworthiness. The firepot was empty too, so Mr. Boone started to shut himself down. Green Mountain Grill 2019 Davy Crockett Pellet Grill – Wi-Fi Enabled Overview What makes this pellet grill different from others is its out-of-the-box portability. The quick-start guide gets you up and running in no time, and the 212-page printed owner's manual includes more than 50 recipes with color photographs, a troubleshooting section in case anything goes kaflooey, and a detailed WiFi connection guide for the smartphone app. I simply moved everything and clipped one of the probes (labeled Smoker) to my charcoal grill, which was already fired up to sear some steaks. That's a steal: if you can wait, it's about $100 cheaper than the year-round price. This isn't the most airtight cooker we've tested, but it's not nearly the priciest either. When comparing the Traeger Pro 575 and the Green Mountain Grill Daniel Boone Prime stainless, both models are superb backyard pellet grills. Yes, smoked eggs. All the guides are available online as well. Time to make food! The GMG Davy Crockett is the pellet grill that goes everywhere! Certainly not the best pulled pork I've ever made, but it was 100% delicious. As for the rest of the graph here, after doing this bread test, I left the probes clipped to the grates and raised the heat a bit, as shown in the graph. If you like AmazingRibs.com, please save this link and use it every time you go to Amazon. Contact Us. But the pellets didn't light. For example, "Tri-Tip Beef Roast" STEP 1: Cook at 225° until the internal meat temp hits 110°, STEP 2: Crank to 500° for browning until the meat registers 135°, STEP 3: drop cooking temp to 150° to keep warm. But it's also gaining popularity with people who want to add a small, set it and forget it pellet smoker to their backyard arsenal. Grill smarter, eat better! But at this price, DB Prime has quite a few features that most other brands don't, making it a great value. After about 10 hours of cooking with intermittent checking, it was early evening. Can't say as much for the 49ers. Like other pellet grills, Daniel Boone works much like an indoor kitchen oven but outside—and with smoke. Personally, I like to be a little more involved in the cooking, so this type of total autopilot feature is a bit much for me. Do your fried chicken and calamari outside. Note: those high temps of 700°F or so were not registered on the Daniel Boone. Green Mountain Grills (GMG) has been making pellet grills since 2008, and in 2014 they drastically lowered prices to reach a wider market. Having experienced this before with other "smart" pellet cooker tests, I didn't set the grill for complete autopilot. I wanted it super tender. The bottom crusts got nice and crisp. These are products we have tested, won our top awards, and are highly recommend. Great for picnics, tailgates, beach parties as well as the backyard or patio. Save on select Choice and GMG Prime and Prime Plus pellet grills now while supplies last. It's hard to beat a Weber kettle, but Napoleon holds its own and adds some unique features to make the NK22CK-C a viable alternative. For best results, please refrain from using File-Print. The brisket profile shown here takes you through several cooking steps. After the burn-in, I set the grill temp to 225°F, and put two 9 pound pork shoulders on the grates. Like a dummy I called my dealer and see what it would cost for a repair. I'd set the finish temp for the meat at 150°F. ***UPDATE*** After another phone call to complain, literally to vent—-I didn't need any parts or anything else, they agreed to replace my unit with a brand new one. Traegers are top-notch but come at a price, and Green Mountain … They weren't done. Check out our review of the Daniel Boone (DB) Choice here. All Green Mountain Grills have peaked lids on the cookbox, somewhat like an A-frame house. of cooking surface – folding legs – Stainless Steel Baffles – 150-550 temp range – auto start. If you haven't caught on to the pleasures of pellet cooking, the Daniel Boone Prime from Green Mountain Grills might be the one to light your way. Prime/Prime Plus Grills; Choice Grills; Accessories; Pellets; Parts; Videos; Recipes; Grill Support. Had to just pull the plug. But I had forgotten to push them down to the center from the sides the last time I checked. Click here to download our ebook "Amazing Ribs Made Easy" $3.99 on Amazon (free Kindle app runs on all computers and devices). There was quite a bit of sawdust too. When I came back 2 hours later, the pork shoulders had a nice reddish veneer on them from the smoke. All you need to do is add wood to the tray above the burner to start smokin'. A metal tube runs from the firepot to a lockable door on the outside of the cookbox. Buy a Traeger. I felt like a master puppeteer manipulating my marionette with WiFi. It registered 925°F!! GDPR requires that we be willing to delete any info we have about an EU resident if you request it. It is absolutely positively without a doubt the best bargain on a smoker in the world. The cookbox and lid are constructed of 14 gauge steel. Unlike a lot of manufacturers, Green Mountain Grills have a very simple and easy to understand line-up of grills. At this point, I stepped out for rye bread, and let Mr. Boone do his thing. Then I could control Mr. Boone right from my phone. I have to say, after everyone at the Super Bowl party tasted both kinds of ribs, Mr. Boone's Char Siu took the win. Notice the hopper latch that keeps the top closed. Let's say it's 105°F in Phoenix and you don't need to burn as many pellets to maintain the grill temp, you can set/calibrate the auger speed to run slower. If you live in area of any humidity, be extremely aware. Had fire/flames going inside. The Slow 'N' Sear turns your grill into a first class smoker and also creates an extremely hot sear zone you can use to create steakhouse steaks. So I put them in my indoor oven at 225°F with a drip pan below, closed the door, and went to bed. Green Mountain was even going to hire someone to come out to my house to Weld it on for me.
Kérastase Sugar Spray, Hobbies In Resume For Electrical Engineer, Dbhdd Region 6, Vitra Womb Chair, Brentwood Country Club Membership Cost, Scientific Facts On Arctic Climate Change, Lost Birds Nj, Cicero Meaning Italian, Allinoneguitars Promo Code,


text:
Everything posted by Fishy
Fishy replied to David T. Cole's topic in Other Non-Fiction Shows
Wendy has had her NJ dermatologist on her show - Dr. Marion Shapiro - but she's white.
I too was shocked at how feeble she seemed to be walking out. Does Lymphedema do that to you?? Now her latest thing seems to be she's desperate for a man - she's got no one to hug her. Blech! Not looking forward to the stories she'll start telling when she gets some hook-ups. Ugh.
Totally agree - T O T A L L Y!! She makes EVERYTHING about her - yes, her show but I am TOTALLY over it. She's major OBNOXIOUS - always YELLING and totally unwatchable - for me anyway.
it's a woman - Marion Shapiro
Jerry O
Fishy replied to PrincessPurrsALot's topic in Other Non-Fiction Shows
LOL!! I was thinking he needs a haircut... Totally...
Could only watch 10 minutes..... nuff said - not for me. The word that comes to mind is pathetic. JMO
Shopping Channel Hosts: Sales Prevention Team
Fishy replied to SilverStormm's topic in Shopping Channel Shows
and now she's going to be on The Talk - UGH UGH UGH
54.9k replies
and what is her big attraction to 'pantyshorts'... they seem to be her latest love. . …. and I'm sure Wendy will be wearing her latest obsession - pantyshorts. and speaking of Harvey & TMZ, I gag everytime when she mentions TMZ she adds.... 'Hi Harvey and Charles ….. hi Vannnnn' - the Van part all dreamy like. Gag.
According to Wendy she has already been diagnosed with lymphedema (she said look it up - this is not a health segment - LOL!) which may account for the cankles.
Holy crap! that was some 'return' show.... During the hot topics segment (which was ALL.about.her) Wendy was practically yelling. A new Wendy has definitely been unleashed. I'm still laughing especially at the fact that she already has someone she's crazy about - not IN LOVE, mind you, and he's a doctor (she hinted). She also said 'Momma don't go after babies' or some sheet like that, meaning he's in her age bracket. Uh huh... her sense of humor & personality is what attracts all ages to her donchaknow. I was peeved at myself that I kinda liked her new wig. LOL. OOoooohhhhh Wendy -
NEVER YOU!! LOL! (sorry seeing this late)
Wendy is acting as OTT of her 'new life' (cough cough) as she was when she was hiding details of her old life. Give it a rest. Ugh .
Speaking of Adam Levine, boy, he sure has had a lot of 'looks'... LOL!
make that party of three
I had to laugh that he was served at 6:30 am...… LOL!! have a nice day Kev!!
Think Wendy would need to go through a LOT of therapy before she would ever come to a place where she would leave her husband. She's seriously messed up. Not trying to diss her but she has got a LOT OF ISSUES that need to be worked on, addiction issues, marital issues, self esteem, etc. Just another example of seeing how the truth comes out one way or the other.....
This. me too.
Thank you - UGH - the whole phony ass intro dialogue made me sick.
I agree, but Wendy did 'design' a line of clothing that's sold through HSN - doesn't that qualify her??..……… (snerk) Wendy almost looked unrecognizable in that photo of her coming out of the CVS in Florida. Sheesh a little effort wouldn't hurt. Could that woman with her be her sister maybe? I've lost interest in her return date what with all the announced postponements, but could someone tell me when she's expected to return for real? (never mind)
I wish someone would track down Wendy's Mom in Florida for an interview. She seems like she'd be an easy mark to 'spill her guts'...
woo boy - I bet Wendy LOOOOOOVED this ………..Maury's Offer
the plot thickens...……….
BWAHAHA!!!
I hear Wendy has delayed her return a week - returning on Jan 14 now - she must need more recovery time - wonder if it's physical or emotional.


text:
Corporations enter a new frontier
Grant Buckler
Vancouver-based Communicate.com runs a network of e-commerce sites on the Web. The six-year-old, publicly traded company wanted to build its profile and communicate with investors. So last September Adam Rabiner, its communications director, started a blog.
Investors increasingly go online to research companies, Rabiner says, so a blog is a good way to reach them. And sometimes it even helps Communicate get press coverage.
On the first day Rabiner's blog was online it attracted five visitors. The first couple of weeks were frustrating. "I felt like I was talking to myself," he says now. But by spring, the Communicate blog was attracting a couple of hundred unique visitors every day, and Rabiner says it's definitely helping his company's profile.
"It's a good way to get information across," he says, and "it really puts a human face on us."
No PR-speak
In the past few years the Internet has become more about sharing and building communities, says Richard Giles, director of Clique Communications, a Perth, Australia, firm that advises clients on online activities. "The businesses that understand that that's what the Internet today is about are the ones that are finding it easier to use it as a business tool," he says.
"The future of the company is about community and community engagement," says Stephen Ibaraki, co-host of the Canadian IT Manager's Forum operated by the Canadian Information Processing Society (CIPS) and Microsoft Canada Co. "Products and services are not as key today as they were in the past. A lot of what's key today is the customer experience."
There are right and wrong ways to do corporate blogs, though. The cardinal rule is to be genuine. Corporate blogs that read like product brochures, or worse, that try – as a few have – to disguise marketing messages put together by the company as genuine comments from outside sources, risk alienating customers. "People pick up on that very quickly," Giles says.
Ibaraki agrees. "Customers actually can identify marketing-speak and PR-speak." To be believed, a corporate blog must be honest and present information in a "personal voice."
A wide range of topics
Rabiner posts information about Communicate.com, but doesn't limit his blog to that. "There are some things that I find that are more interesting than what's going on here," he says. He blogs about domain-name registration rules, e-commerce surveys and Internet advertising alongside posts about his company's latest financial results. "It is, I guess, a bit promotional," he admits, "but it is what it is – there's no hidden agenda there."
Alec Saunders is chief executive at Iotum Corp., an Ottawa company whose software helps people manage their phone calls. He started his personal blog while between jobs before launching Iotum. While he mentions his company online, Saunders blogs about everything from technology trends to politics. Even though the blog rarely promotes Iotum, Saunders says, "it drives quite a bit of traffic back over to the Iotum Web site."
Draw attention
When a friend who heads another technology startup asked him about the value of blogging, Saunders says, he suggested comparing the traffic on their respective Web sites. The other company is about the same age as Iotum and has an innovative product, says Saunders, but "my traffic was 10 times the traffic that he had."
Giles says he recently advised an Australian client in the building project management business to launch a blog. "There isn't really anywhere on the Internet that discusses project management in Australia online," he says. The client can fill that gap and draw attention to itself at the same time.
The key is to provide value related to what your company does, Ibaraki says. For instance, an auto manufacturer's blog could advise on service issues, a food producer could include recipes, a building supplies or hardware retailer might give advice on home renovations. "Anything that adds value," Ibaraki says. "Anything that will resonate with your audience."
There are some things you can't post on a blog. Rabiner says he is very careful about "material information" that could get him in trouble with securities regulators. Financial results can't go on the blog until after they have been released through the proper channels.
Don't cross boundaries
Business bloggers need to beware of disclosing confidential information, of breaking securities laws and of liability for libel, slander, obscenity or harassment, says Ariane Siegel, partner at law firm Gowling Lafleur Henderson LLP in Toronto. She warns that boundaries aren't always easy to define. A company executive mentioning a trip to a certain city, for instance, might be tipping off competitors to acquisition talks. What seems like a harmless comment might not be taken that way. But, Siegel says, "you have to balance the risks and the positive aspects."
Some control of what appears on a corporate blog is essential, says Ibaraki, but "you don't want to have too heavy a hand, because if you have too heavy a hand you're going to lose any credibility associated with that blog."
Not all corporate blogs are for public consumption. Jeremy Wright, president of blog network B5Media and New Brunswick-based author of the 2005 book Blog Marketing, says Intel Corp. engineers use blogs to share ideas, for instance. General Motors Corp. has an internal blog for employee complaints.
Technologically speaking, starting a blog is fairly easy. A number of services will run blogs for you at reasonable cost. Saunders says he pays Bluehost Inc. of Orem, Utah, $8 per month to host his blog. He uses WordPress open-source blogging software to maintain the blog. "I think the technology piece of it is trivial," Saunders says.
Communicate.com hosts Rabiner's blog on its own servers and uses open-source blogging software called Serendipity. Rabiner says it took him about a day to learn to use the software and get his blog started. Someone with no technical knowledge would probably need help, he says.
Put some meat on the bone
The bigger challenge for a novice is not the technology but learning how to be a blogger, Saunders says.
"My biggest suggestion," Wright says, "is to not write a blog at first." He advises would-be bloggers to start by reading others' blogs to get a feel for the way blogs are done. Saunders echoes that advice, adding that the next step should be to post comments to those other blogs – something bloggers appreciate and that helps newcomers further develop their feel for how to blog.
Saunders says one of the keys to a blog's success is keeping it fresh. On his own blog, he tries to write two or three items every morning. "You've got to put some meat on the bones. You've got to give people something to read and think about."
Computing Canada
Freelance journalist specializing in information technology, telecommunications, energy & clean tech. Theatre-lover & trainee hobby farmer.
ITBusiness Elsewhere: The iSaver
Executive Roundtable-Building better business ties
Canadian SMB leaders are optimistic about the future due to higher productivity...
Samira Balsara - May 19, 2022
Remote work is here to stay in the software and IT industry,...
Samira Balsara - September 16, 2021
Tech sector jobs booming, with developers and system admins in highest demand,...
Derek Malcolm - February 5, 2019
Alexa heralds the consumerization of artificial intelligence
Jesse Hirsh - January 17, 2017
Did security kill the line of business?
Paolo Del Nibletto - November 7, 2016
More from Grant Buckler
Canadian startups jumping on wearable tech bandwagon
Grant Buckler - October 29, 2013
Real-world 3D printing isn't about guns and goodies
Grant Buckler - June 21, 2013
Toronto startup Top Hat's software boosts student participation
Grant Buckler - June 4, 2013


How good was it to see him sniffing around the middle and trailing Api for that good break which he set up Garrick's try. He needs to do more of that.
He'll start pilling them soon now the ball movement is getting out wide.
That was great play by George!
He wasn't at full tilt either in that break (I feel), so I don't think that's indicative of his true speed. I'd love to see him make a clean break with the line open, to see what he has.
BUT, he was much better last night, and has been good for 3 straight weeks now.
Jorge has always been good mate... the work he does coming out of our own end is enormous. He often wins a penalty and is a fantastic finisher. Obviously, he has some weaknesses, however, his strengths are undeniable.
He has really found some consistency over the last three weeks - good stuff.
Is his name Jorge.....or is it Afa or Sika from the WWF?
Two weeks in a row now Jorge hasn't dropped a bomb, hasn't dropped a ball in general play.
I never thought I'd see that again. I hope it continues for him.
I thought Jorge was done. I am as glad I was wrong!
When a coach puts self belief into his players every things falls into place for a winning foundation .
Trent is the one that is done .
Jorge is still here and back to his best !!!
When you're happy and you know it clap your hands!!
It's the most I've ever heard Jorge speak!
Calling the captain a nerd though, going to get extra laps!


text:
Q: Java - Print strings showing newline characters I wish to print out strings to the console and it is important to see the exact string meaning that it should show the newline character \n in the logs.  So it will be "this is the exact sequence of chars \n"

A: You could replace all occurrences of the \n character with \\n (which will appear as \n when printed). You should also replace occurrences of the \r character with \\r in case it is present.
String str = "this is the exact sequence of chars \n";
str = str.replace("\n", "\\n");
str = str.replace("\r", "\\r");
System.out.println(str);

redpajama_set_name: RedPajamaStackExchange


text:
On reflection
A Japanese region 2 DVD review of SOSEIJI / GEMINI by Slarek
In a turn-of-the-century Tokyo suburb, young doctor Yukio lives in a fine house that he shares with his wife, his parents and the staff who tend to the living quarters and assist with surgery. Despite being located close to a large slum district where disease is rife and medical help is desperately needed, Yukio works exclusively for more wealthy patients. That he refuses to assist the poor even when begged is something his new wife Rin, whose past he knows little about, is unhappy about and admonishes him for. One night Yukio's father dies in suspicious circumstances and a short while later his mother falls victim to a heart attack after a nocturnal visit from the mysterious Sutekichi, a man who bears a striking resemblance to Yukio. It's not long before Sutekichi reappears and imprisons Yukio in a deep well in his own garden and assumes his identity. Rin, at first unaware what has happened, soon finds her past catching up with her.
Tsukamoto Shinya remains Japanese cinema's most boldly creative enfant terrible, a brilliant and twisted visionary whose punk sensibilities, electrifying visual and aural instincts and fascination with body horror places him alongside the likes of the two western Davids, Cronenberg and Lynch. That said, if his early films had a passing resemblance to the works of those directors in theme and tone, the energy and purposeful insanity of their execution put them very much in a class of their own. Almost all indie fans worth their salt have seen his extraordinary low budget debut Tetsuo: The Iron Man, and a good many of those have caught the more commercial (but in many ways equally bonkers) Tetsuo II: Body Hammer. But from then on the UK audience for his films dwindles, in part because the later works are so hard to track down here. Tokyo Fist – a dark, sometimes explosive sado-masochistic drama of failing relationships starring Tsukamoto himself as the film's beaten-down professional victim – did get a limited UK cinema and video release, but has nevertheless found a dismayingly small audience. It did at least fare better than his next film, the kinetic and similarly themed Bullet Ballet, which has yet to appear in the UK in any form.* His latest, A Snake of June, did make it to the UK and was released on DVD by Tartan, but once again failed to reach the audience it deserved. If you know Tuskamoto's work only through his first two films then know that he did not calm down or dilute his style in the least in the works that followed, as the energetically twitchy camerawork, stark black-and-white visuals, pounding industrial score and sometimes frantic editing of Bullet Ballet testify, but has since developed it in interesting new ways. There is a strong consistency of style to his work, and there are plenty of scenes in A Snake in June that are instantly recogniseable as the work of the man who made Tetsuo.
In many ways Soseiji (also titled Gemini for a foreign audience – both titles appear together on the film itself) stands out in Tsukamoto's filmography and represents a stark shift in style from the work that preceded it. The twitchy, long focus opening shots of rats feeding in wasteland and the thunderous rumble that accompanies it are almost a Tsukamoto calling card, but then we move into less familiar territory: pin-sharp 35mm colour photography, beautifully and sometimes symmetrically composed shots, a carefully stylised use of costume and make-up – this is almost as far from the director's usual aesthetics as you could imagine. But this is style with purpose, with the cool formality of these shots reflecting the studied composure and ritualistic behaviour of the occupants of the doctor's house, as well as the frostiness that exists between Rin and her new in-laws, who clearly regard her as being beneath her son's social standing. When composure slips into uncertainty, this formal style gives way to a more unsteady, hand-held approach, but things really shift gear in moments of crisis or conflict, first evident on the stormy night when the doctor refuses to help a plague-striken slum woman banging on his window, but drops everything to treat a local mayor who has been severely injured as a result of his own drunken tomfoolery. The camera itself suddenly feels charged with the emotion of the scene, animated and fidgety and deliberately refusing to settle on any one thing, as the doctor urgently attends to the mayor while his wife angrily berates him for shunning the slum woman. Later on the style shifts again, as Rin remembers her earlier days with her lover Sutekichi (Yukio's long lost twin), a time filled with joy and excitement given sometimes exuberant presentation, with energy fueled tracking shots and some soaringly uplifting chords from Chu Ishikawa's otherwise mesmerising, chant-driven score.
As the story of brothers separated at birth and re-united by their feelings for the same woman unfolds, a fascinating study of duality and split personalities emerges. What starts as a conflict between rich and poor develops into a more complex study of the extremes of human civilisation, as the ragged Sutekichi adopts the false trappings of so-called respectability and the imprisoned Yukio steadily regresses to a primitive state, eventually driven to scrabbling in the dirt for food like a wild animal. As Sutekichi slowly absorbs the identity of his brother, he also inherits his coldness to those around him, while Yukio learns both humility and raw hatred, and with it the propensity to violence and destruction. All of this reaches a dramatic peak with a physical confrontation between the two men whose aftermath only makes any real sense if read on a metaphorical or perhaps even supernatural level.
Tsukamoto encourages this reading through the film's consistently striking visual sensibilities and its haunting other-worldliness. It takes the project's own publicity to inform us of its locational and spacial setting, but nothing in the film roots it in a particular place or time period – Tsukamoto teasingly plays games with costume, make-up and production design to create a world that appears anchored somewhere between an unspecified period in Japan's past and a more modern alternate reality. Shot with a vibrance, brightness and rich colour rarely associated with period dramas, Yukio's house, garden and equipment are rooted in tradition, as are the costumes of his family, while his own white work suit has a more contemporary feel, and the anti-contamination costumes used by the medical staff look almost like they were designed by Carol Spier for a Cronenberg film. The saucer-like hairstyles of the women and Rin's colourful costumes in the flashback sequences are purely design-driven, and in a strangely effective move that has nothing whatsoever to do with historical accuracy, none of the characters have eyebrows.
But it all works beautifully, the sometimes sublime unification of camerawork, editing, music and performance giving the film a unique look and feel, not just within Tsukamoto's own canon but modern Japanese cinema. Contained within are numerous moments of inexplicable perfection: Rin running joyously towards the slum to change clothes after catching sight of what she believes is her lost lover; her temporary relief from despair when passed by a band of roaming musicians, whom she herself is shown performing with (is this a memory, a dream, a flash-forward or just wish-fulfilment?); the furious wrestle between Yukio and Sutekichi for what appears to be their very existence; the moments when the slum itself seems to be generating a force so powerful it affects the stability of the image on screen.
Soseiji is in many ways an atypical Tsukamoto film, having little of the ferocity or extreme body horror and violence of Tetsuo, Body Hammer, Tokyo Fist or even Bullet Ballet. But don't let the initial surface calmness, carefully composed visuals and studied pace fool you, for this is Tsukamoto on magisterial form, and he has created in Soseiji a work that is captivating, beautiful, and yet also haunting and challenging. Rarely seen in the west at present, it seems likely that Soseiji will in future times be looked back on as one of the finest works of one of modern cinema's most exciting, individualistic and visionary talents.
The anamorphic 1.85:1 picture here is lovely, a pristine transfer from a perfect print, with excellent colour rendition, rock solid blacks and no visible compression artefacts. Sharpness is bang on with no signs of obvious edge enhancement. The print here has a sumptuously 'filmic' look that does the visuals proud.
Somewhat surprisingly, the only track included here is Dolby 2.0 surround, though it still shines in its clarity and breadth, and background sounds and music are very effectively distributed across the sound stage. Lower frequencies are reserved largely for the sonic rumbles that accompany the scenes of conflict, and these register well, especially if you are able to redirect them to your sub-woofer.
Two sets of subtitles are on offer, Japanese and English. Both are very clear, with the Japanese encoded on the right-hand side of the screen to be read top to bottom, right to left, as they should be (but often are not, even on Japanese releases). The English translations are, on the whole, very good, and contain virtually no spelling or grammatical peculiarities.
The included extras are in the 'Gallery' section on the main menu (the second option).
First up is Cast/Staff, which consists of brief biographies of key cast members, and more detailed coverage, plus 10 stills each, of the two leads. All text is in Japanese only.
Next up is a Shooting Diary, a reasonably detailed record of progress on the film's production, but being in Japanese only this will mean little to most western viewers.
Stills Collection features ten behind-the-scenes stills and seven examples of press artwork.
Trailers has two theatrical trailers (0:34 and 1:41) and a TV spot (0:15). All three are non-anamorphic 1.85:1.
A Special Features section is subdivided into three sub-sections (the fourth option plays the main feature).
The Making-of Featurette (17:47) is shot on 4:3 digital video and lacks any English subtitles, but still provides a very useful look at Tsukamoto at work and proves genuinely revealing at times, not least for the revelation that a memorable low-angle tracking shot of a housemaid polishing a floor was achieved by dragging the camera operator along the floor on a blanket. Included are some intriguing sections involving the green screen process work and the large, purpose-built set for the interior of the well. A couple of brief, on-set interviews will need some understanding of Japanese to follow, but much of the rest speaks for itself.
Venice Film Festival (16:56) consists of diary footage of Tsukamoto and the film's stars at the 56th Venice Film Festival, at which the film was screened. It includes footage of the press conference and interviews conducted outside of the festival building, all of which are in Japanese with no subtitles, and the screening itself and its aftermath.
Make-up featurette (6:02) details the process of "removing" the eyebrows from the actors, set to music from the film with textual details provided in Japanese. Details of the exact products used and the step-by-step guide given give it the feel of an instructional video. The second half consists of an interview with make-up artist Isao Tsuge, intercut with on-set footage.
Soseiji is a beautifully realised and gripping study of duality and the very definitions of 'civilised' behaviour, and is one of the finest films by one of modern Japanese cinema's most talented and exciting directors, but one whose work too often goes unseen in the west. This Japanese disc is becoming increasingly hard to track down, as are similar editions from Korea and Holland, but believe me, the effort is worth it. Although five years old now, the film remains criminally unavailable in the UK, denying devotees of modern Japanese cinema access to one of its most arresting works. So hunt out the DVD, watch out for a late night screening on one of the satellite channels, or better still hassle Warner Brothers – the very international company responsible for this Japanese release – to put out a UK version. But whatever you do, find a way to see it. As for me, I'm cueing the disk up for my eleventh viewing as soon as I finish this.
* The film has since been released on UK DVD by Arts Magic and on Blu-ray by Third Window Films.
Soseiji
Tsukamoto Shinya
Motoki Masahiro
Tsutsui Yasutaka
Fujimura Shiho
Asano Tadanobu
Ishibashi Renji
region 2 Japan
1.85:1 anamorphic
Dolby 2.0 stereo
subtitles .
Making-of featurette
Make-up featurette
Film festival featurette
Shooting diary
Tesuo / Tetsuo II: Body Hammer
[DVD review]
[Blu-ray review]
A Snake of June