text:
Doctus Artifex
Historic Techniques
A look at the history of artistic techniques and studio practice
'Painting is what paint does': Milton Resnick at Mana Contemporary
Milton Resnick's paintings are arresting. The images are hard won. The surfaces are tactile and weighty. They have presence.
A major survey exhibition of Resnick's work on view at Mana Contemporary through August 8, 2014. This exhibition, Milton Resnick (1917-2004): Paintings and Works on Paper from the Milton Resnick and Pat Passlof Foundation, spans over a half century of the artist's work. Resnick emigrated to New York from Russia in the 1920s, participated in the WPA Artists' Project, and befriended Willem de Kooning, Arshile Gorky, John Graham, and other downtown artists. He was drafted into the army during WWII, then returned to New York in 1945. His abstract paintings placed him firmly in the first generation of abstract expressionists. In the 70s and 80s, he created allover compositions with increasingly dense paint applications. The resulting works have a "topographical presence" and emphasize the materiality of paint above all else. Works from this period are exhibited in the first floor gallery space at Mana. The exhibit continues on another level, where several of his early works from the 1950s are grouped with later figurative works of the 90s and 00s. Resnick died in 2004 in New York, and his wife, the painter Pat Passlof died in 2011, establishing the Milton Resnick and Pat Passlof Foundation in her will.
Milton Resnick, Mana Contemporary installation view
Milton Resnick, Mana Contemporary, Installation view
Ever since I first encountered Resnick's works at Cheim & Read in Chelsea, I've craved seeing more of his paintings. The few exhibition catalogues I could find of his work are rare and out of print (with the exception of Milton Resnick: A Question of Seeing: Paintings 1959-1963, published in 2008 by Cheim & Read). In the late 90s, a televised portrait of Resnick aired on PBS, A World of Art: Works in Progress: Milton Resnick and (Works in Progress: Milton Resnick, Part 2). It provides a glimpse into his painting process, his life with Pat Passlof on the Lower East Side, and many of his insights into the medium of oil paint. "Painting is what paint does. You have to be the straw in the wind and listen to what the master, paint, tells you to do."
Milton Resnick, Sphinx
Given the longevity of Resnick's career, it is surprising that this show at Mana is the first major East Coast exhibition of Resnick's work. Perhaps Resnick isn't more widely known precisely because his paintings demand being experienced in person. He uses paint as a visual medium rather than as a vehicle for presenting ideas; since the paintings don't explicitly express intellectual concepts, they don't lend themselves to written discourse. Furthermore, in our age of mechanical (now digital) reproduction, we've become accustomed to slick images that are easy to represent with digital surrogates. There's something to be said for the cult of the original, for authenticity, and for experiential understanding. Resnick is that breed of painter's painter whose work warrants firsthand knowledge.
Resnick, installation view
Resnick
Visiting the Resnick show at Mana Contemporary is a pilgrimage of sorts. Firstly, you must take the PATH train (which isn't that difficult, it turns out). Secondly, you cannot view the show without a guided tour. Due to the peculiarities of the gargantuan space, this procedure makes perfect sense, and isn't at all a deterrent to seeing the art work at your leisure. When I went to view the exhibit, our guide explained some of Mana Contemporary's features to the group. The enormous space is a work in progress, with a combination of galleries, studios, printing presses, and art storage. Its beginnings as an art storage facility have influenced the exhibitions, including this current ambitious show of Resnick's paintings. Apparently, Resnick's work was being stored at Mana, and one of the curatorial missions is to showcase artists whose works are in storage there. The Milton Resnick and Pat Passlof Foundation will be opening a museum on 87 Eldridge Street in the Lower East Side in a synagogue that was Resnick's studio from 1977 until his death in 2004. The museum is scheduled to open in 2016 and will provide an exhibition space for works by Milton Resnick and his wife, Pat Passlof, as well as the study of other abstract expressionists.
Milton Resnick, Mana Contemporary, works on paper
Kentridge's Refusal of Time X 3
"The only reason for time is so that everything doesn't happen at once," Einstein said pithily. It certainly takes more than once to digest all the complexities and theatricality of William Kentridge's five-channel video installation "The Refusal of Time," a work that takes on Einstein's theory of the relativity of time. Over a span of two years, I've had the opportunity to see the work installed in three venues, and multiple viewings are necessary to process the multi-sensory delights of the piece. Recently, I saw installations of "The Refusal of Time" at the Institute of Contemporary Art in Boston, MA, and at the Metropolitan Museum in New York, NY. The first time I saw this piece was at dOCUMENTA 13 in Kassel, Germany, the exhibit at which the work premiered. This poignant work is a reflection on time, space, memory, colonialism, and scientific history. The imagery comes from myriad sources: Einstein's experiments with clocks, the artist himself, books, text, dancers, silent film, physics. In short, it is a grand piece and addresses grand themes. This vigilance toward tackling the "big issues" is a worthy enterprise that few artists attempt, and even fewer manage as deftly as Kentridge. Since the work itself has been widely discussed elsewhere, I'd like to focus my commentary on the material aspects of these three installations.
William Kentridge, Refusal of Time, 2012
Kentridge, who still lives and works in his native South Africa, trained as a painter and printmaker, and produces muti-media works that span film, theater, collage, sound, and sculpture. Kentridge is perhaps best known for his style of stop-motion animation in which he makes charcoal drawings that he alters numerous times, photographing each iteration in order to create individual scenes. The resulting images contain all the traces of the artist's hand, the erasures, and transformations that underscore the agent of time in the work. In 2010, the Museum of Modern Art in New York mounted a major exhibition of the artist's works, and their website offers a wealth of background information on Kentridge's work, his biography, and his process. He discusses his methods in this clip on MoMA's interactive Kentridge website.
William Kentridge, Refusal of Time, at dOCUMENTA 13, 2012
For "The Refusal of a Time," Kentridge brilliantly married the hand-made marks of his charcoal drawings with live action film, a musical score, and installation. In the videos and accompanying sculpture – a breathing machine called the elephant, which alludes to a Dickensian anxiety over industry- he addresses changing conceptions of time throughout history. This central theme of the work resulted from a collaboration between Kentridge and Peter Galison, professor of History of Science at Harvard University. The vision that emerged from their conversations was then realized with the aid of video filmmaker Catherine Meyburgh and composer Phillip Miller. Philip Miller's soundscape features a metronomic beat, instrumentation, and spoken word, to convey the varied pace of the modern city and different manifestations of time. Kentridge describes the work in this video on the Met's website.
In the three installations of "The Refusal of Time" at dOCUMENTA 13, the ICA, and the Met, the biggest variable was the degree to which the physical space reinforced the content of the piece. That is to say, the various spaces evoke different ideas about time. The Hauptbahnhof, the train station in Kassel where the work was shown originally, conveys a more fragmented notion of time in industrialized society than a museum like the Met can convey, with its air of permanence, its temple-like architecture, and its hallowed galleries of art spanning the long trajectory of human history. The ICA has yet other temporal qualities, being a relatively new structure. The raw unfinished look of walls and ceilings did not seem forced in the ICA, but typical of such galleries. Exposed sheet rock gave the feeling of a construction site, albeit a manicured one. The floors and ceiling fixtures had a regular grid pattern unlike the haphazard scuffs at the Met or the natural cracks and texture of the Hauptbahnhof. The main drawback at the Met was the size of the space because it required the five videos to be projected smaller, and the main drawback at the ICA was simply the starkness of the space.
William Kentridge, Refusal of Time, at the Metropolitan Museum, 2014
William Kentridge, Refusal of Time, at the ICA
William Kentridge, Refusal of Time, ICA
Why did the work function better in the Hauptbahnhof? As any student of 19th-century history knows, the tyranny of time originated with the railroad. The space of the train station was more than double the size of the other two installations of the work in Boston and New York, and it was imbued with its own sense of industrialized time and the patina of age. The context fits the subject exceedingly well. Mechanized clocks and schedules all are due to the railroad.
'Her whistle shrieks like a thousand fiends let loose upon the night,' article from The London Bulletin about 19th-century railroads & an advertisement for Great Western Railway
Time gained increased significance with the trains. As train stations go, the Hauptbahnhof in Kassel has all the hallmarks of age. Its worn and textured brick walls painted white in the center gave the video installation added visual interest. In both the Met and the ICA, the look of a well-worn space was contrived. Sheets of dry wall were propped against the gallery walls to form the projection surface. Painters tape was semi-attached on places along the walls, and scuffs and tape marks were added to the floors. Undoubtedly, some of the elements in the room at the dOCUMENTA installation were purposeful, carefully-crafted marks designed to look authentic to the space. However, this contrivance was more expertly concealed. The chairs were bolted down at dOCUMENTA, imposing the artists optimum viewing environment- one of perfect casualness. It appeared as though viewers throughout the day had moved and arranged chairs at whim. In contrast both the ICA and the Met chose to use tape marks on the floor to map the chair arrangements. There was no attempt to hide the predetermined layout of the rooms.
Installation view at the Met
Floor detail at the Met
To be fair, the installations at the ICA and the Met did try to conjure the sense of the artist's studio by adding some of the trappings of a work space. The viewer's encounter was one of stumbling into a studio where work was being made in haste and the makers had just left. That was a rather successful way to work with the particulars of a given space. The two museum galleries were half the size of the space in the Hauptbahnhof. Naturally, the larger space allowed the videos to be bigger and the sound to be louder. The metal cones that carried the sound and the central machine sculpture were the same in all three exhibitions. However, the larger video projections in the Hauptbahnhof created a more seamless transition in cases like the parade sequence, in which characters march around the room screen to screen. The wider gaps from screen to screen in the two museum installs yielded a quite different viewing experience.
Another main difference among these installations was the ICA's adjacent exhibition of Kentridge's drawings. It was a pleasure to see the video work in relation to his works on paper, and helped position the installation within the larger context of the artist's work. Of the three, the installation at the Met is the only one that is a newly-acquired part of the museum's permanent collection. While part of me would have liked to see "The refusal of Time" installed somewhere in the Greek & Roman Galleries or near the Temple of Dendur to capitalize on that special relationship to time that only an institution like the Met has, it's understandable that a permanent installation must be in the contemporary galleries for pragmatic reasons. It's laudable that the Met has acquired this ambitious video work, and last week the museum received an AICA-USA Arts Awards for Excellence in Curatorial Achievement in the time-based media category. While the Met's installation closed in May, they do provide a rich online source about this video work, MetCollects.
The strength of the work isn't reliant on any one particular kind of space. It's engaging and provocative despite the minor differences from one exhibition to another. Since it was created for the Hauptbahnhof, it understandably functioned best there. Among the many delights at dOCUMENTA, this work was probably the one that delighted me most (along with Charlotte Salomon's drawings, which I'll work my way around to discussing in some future post), and it was well worth seeing again… and again.
There may be hope: two painting shows in Chelsea
"The whole thing of should I paint or not, is painting dead—of course it's not." That is a delightfully dismissive statement by Glenn Brown in an interview in 2009 in Art in America. Of course it's not. It's that simple, really, and the two painting shows I saw last weekend in Chelsea are a rousing testimony to the vivacity of oil paint: Glenn Brown at Gagosian, and Hannah van Bart at Marianne Boesky. (Had time permitted, the Maria Lassnig show at PS1 would have completed my art pilgrimage and made a satisfying triumvirate of figurative painters. The Maria Lassnig show is up through September 7th though, so there's still time).
Glenn Brown, In My Time of Dying, 2014
British painter Glenn Brown says in the press release for the current show at Gagosian, "I like my paintings to have one foot in the grave, to be not quite of this world." My artistic sensibilities so align with his – the indebtedness to art history, the love of the language of oil paint – that I'm thrilled to have finally gotten to see his work in person. The paintings on view are all oil on panel, and the surfaces are luscious and luminous. Brown revels in all the medium can do; blurred areas of atmospheric calm set off the vigorous dizzying (but controlled) brushwork that tends to be reserved for the central subject of each piece. The paint is applied thinly and methodically. I expected the surfaces to be like Auerbach's with thick impasto instead of such polished surfaces. As the artist himself said, while he admires de Kooning or Soutine, he paints more slowly, which lends itself to more refined results. Brown traffics in the widely-recognized themes and stories of myth, of the Bible, and of art history, and people relate to it. It's truly refreshing to think we can all put notions about there being no meta-narratives behind us. His mastery of the medium is exuberant and deeply satisfying on many levels.
Glenn Brown, Cactus Land, 2012
The works in the Gagosian show included several bronze and oil painted sculptures, all of which related to the art historical epochs alluded to in the paintings. With titles like "Magdalena Penitente" and "Nazareth" or "Romantic Movement," the foothold in the artistic achievements of the past is apparent.
Glenn Brown, installation view, Gagosian Galley, 2014
Glenn Brown, installation view, Gagosian Gallery, 2014
Hannah van Bart deals directly with nostalgia and human memory in her work, but in a decidedly different way from Glenn Brown. With a more muted palette, Van Bart uses vintage photos as her source, and alters them with a characteristic nervous line and sensitive brushwork. The images are re-worked numerous times until the original reference is supplanted by the painter's decisions about the subject's portrayal. For a glimpse inside her studio in Amsterdam, watch this interview with Hannah Van Bart on 4 Art on Kunstuur from March 2014: 4 Art – Hannah Van Bart.
Hannah Van Bart, Doubt, 2013
Van Bart's portrait exhibition at Marianne Boesky featured approximately 15 paintings (all pictured on the gallery website), all oil on linen. The works included are refreshingly modest in scale and scope. Her paintings have a tactile surface that I find pleasing. It's nice to see evidence of the human hand's involvement in the creation of anything, especially since so much imagery we see every day is super-slick and created by the press of a button. Although the brushwork is evident, the surfaces are all rather flat. Despite the use of outline around the figures, there's a a satisfying interplay between the figure and the ground. With palette choice, patterns, grids, textures, and undoubtedly many other formal concerns that I overlooked, Van Bart uses all the elements of picture-making to connect the space inside the figure to its surrounding areas.
Hannah Van Bart, installation view, Marianne Boesky Gallery, 2014
There's a line in Virginia Woolf's novel Mrs. Dalloway that I read years ago while working on my MFA in painting in New York, "Cleverness was silly. One must say simply what one felt." It resonated with me at the time, as I was trying to make big splashy clever paintings. When I see work like Glenn Brown's, which seems to originate from a sense of enjoyment and intellectual curiosity, or Hannah Van Bart's, which seems utterly human and self-searching, this quotation springs to mind. Their work is felt. While these two shows both close June 14th, there are a few other choices for happy hopeful art pilgrims. Next up for me will be Maria Lassnig at PS1 (as I already mentioned) and Milton Resnick at Mana Contemporary.
Hannah Van Bart, Man, 2014
Critic with a T-Square
Sharon Lacey
St. Bride Printing Library
Rembrandt Database
Doerner Institut
Warburg Institute


Mens Adidas True Chill Defy Skate Shoes | Size 9.5 New with Box/Tags.
Details about Mens Adidas True Chill Defy Skate Shoes | Size 10.5 New with Box/Tags.
Mens Adidas True Chill Defy Skate Shoes | Size 10.5 New with Box/Tags.


text:
Special Events - March 25
This calendar lists book or author events, auditions for theatrical productions, art, craft or food fairs and other unique entertaining events.
By Brainerd Dispatch, Jennifer Kraus
'Talking With'
Brainerd Community Theatre's season of streamed performances brings a collection of women from all walks of life, each with their own fascinating life story, is the subject matter of Jane Martin's compelling play "Talking With." The play will be available for home viewing Thursday-Sunday, March 25-28. The production will be made available for same-day viewing. Updated and current ticket information is available by visiting clcperformingarts.com .
Celebrating Women's History
Two-time Minnesota History Award winner William D. Green will discuss his latest book "Nellie
Francis" at 6 p.m. Tuesday. The author event is in part of celebrating Women's History Month. Register for this free virtual event on the Legacy Programs Facebook page at facebook.com/KRLSLegacy or call a local library.
Minnesota author Alison McGhee will discuss her new book for young adults titled, "Where We Are" April 5, as part of a Brainerd Public Library's Brown Bag Lunch author visit. The author will speak from noon to 1 p.m. live on the Friends of the Brainerd Public Library Facebook page at facebook.com/Friendsofthebrainerdpubliclibrary .
Aitkin Musical
The Aitkin High School Concert Choir will stream its performances of the musical "Sister Act" at 7:30 p.m. April 8-10 and at 2 p.m. April 11. Tickets for these performances will be sold as "scheduled content," which means the ticket entitles a person to watch the show at the purchased time only. Tickets are $10 per person and/or $38 for four or more. Tickets are available on the school's website at isd1.org and then click on the link to purchase tickets.
HSO hosts virtual concert
The Heartland Symphony Orchestra's spring concert will be a virtual production at 2 p.m. Saturday, March 27. The spring concert, titled "Music From the (Virtual) New World," will be available to watch it anytime on HSO's website HeartlandSymphony.com and YouTube channel.
Related Topics: THINGS TO DOEVERYDAY PEOPLETHEATER
Bourke's Bookshelf: 'A path that leads in two directions'
This week's featured read is "Angle of Declination" by Deerwood couple Doug and Sally Mayfield.
Live Music — Jan. 25
Live music in the Brainerd lakes area.
Special Events — Jan. 25
This calendar lists book or author events, auditions for theatrical productions, art, craft or food fairs and other unique entertainment events.
CLC hosts Brainerd Community Theatre's production of '9 to 5: The Musical'
Brainerd Community Theatre will put on a production of "9 to 5: The Musical" at Central Lakes College. The musical comedy by Dolly Parton is based on her 1980 hit movie about women in the workplace.
By Frank Lee

redpajama_set_name: RedPajamaCommonCrawl


text:
Home Oklahoma Oklahoma County Del City Kellie S. Howell
Kellie S. Howell
Del City Criminal & Family Attorney
9	years of experience
Family Law, Criminal Law, Divorce	...
Kellie Howell practices in all areas of family law and criminal defense. Ms. Howell was selected to the 2018, 2019, 2020, and 2021 Super Lawyers Oklahoma Rising Stars list. Each year, no more than 2.5 percent of the lawyers in the state are selected to receive this honor.
Prior to joining Sansone Howell, Ms. Howell was the founding attorney at Howell Law Office, PLLC. In addition, Kellie has previously worked with the Hunsucker DUI Defense Firm, Oklahoma Juvenile Justice Center, and Oklahoma City University School of Law. Kellie is admitted to practice in all Oklahoma state courts and the United States District Court for the Western District of Oklahoma. She is a member of the Oklahoma Bar Association, Oklahoma Criminal Defense Lawyers Association, Robert J. Turner American Inn of Court, and Chair for the Oklahoma County Bar Association Law Day committee.
Kellie holds a Bachelor of Arts Degree in History from the University of Central Oklahoma, graduating Cum Laude, and a Juris Doctor from Oklahoma City University, graduating Cum Laude. While in law school, she served as President of the Merit Scholars, Vice President of the American Bar Association, and Historian for Phi Delta Phi. In addition, Ms. Howell interned with the Oklahoma County Public Defender, Juvenile Division and was named a Holloway Scholar by the Oklahoma City Federal Bar Association.
Kellie is a proud veteran of the United States Air Force, having served as a Security Police Officer stationed at Spangdahlem Air Force Base, Germany and Lackland Air Force Base, San Antonio, TX. While at Lackland, Ms. Howell was named Airman of the Quarter. Kellie also did tours in Tuzla, Bosnia, Al Kharj, Saudi Arabia, and Muscat, Oman. Kellie received the Armed Forces Expeditionary Medal, Air Force Good Conduct Medal, Air Force Achievement Medal and the NATO Medal.
In her free time, Kellie's hobbies include traveling, reading, cooking and enjoying life's adventures with her family.
Oklahoma City University School of Law
J.D. (2013) | Law
B.A. (2009) | History
Sansone Howell PLLC
2021 Oklahoma Rising Stars
Oklahoma Criminal Defense Lawyers Association
Oklahoma Bar Association
Robert J. Turner American Inn of Court
Oklahoma County Bar Association
Criminal Appeals, Drug Crimes, Expungement, Fraud, Gun Crimes, Internet Crimes, Sex Crimes, Theft, Violent Crimes
Domestic Violence Criminal Defense, Domestic Violence Restraining Orders, Victims Rights , Victims Rights
Facebook Twitter LinkedIn Justia Profile Kellie S. Howell's Avvo Profile
Sansone Howell, Attorneys at Law Blog
Arvest Bank Tower, Suite 500
4600 SE 29th St.
Del City, OK 73115
Email Kellie S. Howell
J. P. Hill
Frank A. Urbanic
Clayburn Curtis
Benjamin Munda
Sammy Duncan


Apple on Monday quietly announced new versions the iPad Air and iPad mini, the company's the first refresh for those products in years.
Apple on Monday quietly announced new versions the iPad Air and iPad mini, the company's the first refresh for those products in years.
Typically Apple creates fanfare around the arrival of new hardware. But this year it wants the focus of its upcoming spring press event to be all about its rumored streaming service. That's why the company let the world know about its new iPads in a press release.
The iPad Air comes with a bigger 10.5-inch display (starting at $499), and the iPad mini has the same 7.9-inch screen (starting at $399). The devices come with an Apple Pencil and a processor that's three times faster than the previous models.
The iPad mini will mostly serve as an entertainment device, likely to attract students and teenagers, while the lightweight iPad Air replaces the 10.5-inch iPad Pro in Apple's online store.
Apple was widely expected to tease the iPads ahead of its spring event on March 25. But the press release was a surprise.
Tablet shipments have declined in the past few years, especially among devices that don't come with a keyboard. "Perhaps what's the point for having an event for a declining category?" Guenveur added.


text:
"""Tests for tensorflow.ops.io_ops."""
from __future__ import absolute_import
from __future__ import division
from __future__ import print_function

import os.path
import time

import tensorflow.python.platform

import tensorflow as tf
import numpy as np

from tensorflow.python.platform import gfile

class SaverTest(tf.test.TestCase):

  def testBasics(self):
    save_path = os.path.join(self.get_temp_dir(), "basics")

    with self.test_session() as sess:
      # Build a graph with 2 parameter nodes, and Save and
      # Restore nodes for them.
      v0 = tf.Variable(10.0, name="v0")
      v1 = tf.Variable(20.0, name="v1")
      save = tf.train.Saver({"v0": v0, "v1": v1}, restore_sequentially=True)
      tf.initialize_all_variables().run()

      # Check that the parameter nodes have been initialized.
      self.assertEqual(10.0, v0.eval())
      self.assertEqual(20.0, v1.eval())

      # Save the initialized values in the file at "save_path"
      val = save.save(sess, save_path)
      self.assertTrue(isinstance(val, basestring))
      self.assertEqual(save_path, val)

    # Start a second session.  In that session the parameter nodes
    # have not been initialized either.
    with self.test_session() as sess:
      v0 = tf.Variable(-1.0, name="v0")
      v1 = tf.Variable(-1.0, name="v1")
      save = tf.train.Saver({"v0": v0, "v1": v1})

      with self.assertRaisesWithPredicateMatch(
          tf.OpError, lambda e: "uninitialized value v0" in e.message):
        sess.run(v0)
      with self.assertRaisesWithPredicateMatch(
          tf.OpError, lambda e: "uninitialized value v1" in e.message):
        sess.run(v1)

      # Restore the saved values in the parameter nodes.
      save.restore(sess, save_path)
      # Check that the parameter nodes have been restored.
      self.assertEqual(10.0, v0.eval())
      self.assertEqual(20.0, v1.eval())

    # Build another graph with 2 nodes, initialized
    # differently, and a Restore node for them.
    with self.test_session() as sess:
      v0_2 = tf.Variable(1000.0, name="v0")
      v1_2 = tf.Variable(2000.0, name="v1")
      save2 = tf.train.Saver({"v0": v0_2, "v1": v1_2})
      tf.initialize_all_variables().run()

      # Check that the parameter nodes have been initialized.
      self.assertEqual(1000.0, v0_2.eval())
      self.assertEqual(2000.0, v1_2.eval())
      # Restore the values saved earlier in the parameter nodes.
      save2.restore(sess, save_path)
      # Check that the parameter nodes have been restored.
      self.assertEqual(10.0, v0_2.eval())
      self.assertEqual(20.0, v1_2.eval())

  def testInt64(self):
    save_path = os.path.join(self.get_temp_dir(), "int64")

    with self.test_session() as sess:
      # Build a graph with 1 node, and save and restore for them.
      v = tf.Variable(np.int64(15), name="v")
      save = tf.train.Saver({"v": v}, restore_sequentially=True)
      tf.initialize_all_variables().run()

      # Save the initialized values in the file at "save_path"
      val = save.save(sess, save_path)
      self.assertTrue(isinstance(val, basestring))
      self.assertEqual(save_path, val)

      with self.test_session() as sess:
        v = tf.Variable(np.int64(-1), name="v")
        save = tf.train.Saver({"v": v})

      with self.assertRaisesWithPredicateMatch(
          tf.OpError, lambda e: "uninitialized value v" in e.message):
        sess.run(v)

      # Restore the saved values in the parameter nodes.
      save.restore(sess, save_path)
      # Check that the parameter nodes have been restored.
      self.assertEqual(np.int64(15), v.eval())

  def testSomeErrors(self):
    with tf.Graph().as_default():
      v0 = tf.Variable([10.0], name="v0")
      v1 = tf.Variable([20.0], name="v1")
      v2 = tf.Variable([20.0], name="v2")
      v2._set_save_slice_info(tf.Variable.SaveSliceInfo("v1", ""))

      # By default the name used for "v2" will be "v1" and raise an error.
      with self.assertRaisesRegexp(ValueError, "same name: v1"):
        tf.train.Saver([v0, v1, v2])

      # The names are different and will work.
      tf.train.Saver({"vee1": v1, "other": [v2]})

  def testBasicsWithListOfVariables(self):
    save_path = os.path.join(self.get_temp_dir(), "basics_with_list")

    with self.test_session(graph=tf.Graph()) as sess:
      # Build a graph with 2 parameter nodes, and Save and
      # Restore nodes for them.
      v0 = tf.Variable(10.0, name="v0")
      v1 = tf.Variable(20.0, name="v1")
      save = tf.train.Saver([v0, v1])
      tf.initialize_all_variables().run()

      # Check that the parameter nodes have been initialized.
      self.assertEqual(10.0, v0.eval())
      self.assertEqual(20.0, v1.eval())

      # Save the initialized values in the file at "save_path"
      val = save.save(sess, save_path)
      self.assertTrue(isinstance(val, basestring))
      self.assertEqual(save_path, val)

    # Start a second session.  In that session the variables
    # have not been initialized either.
    with self.test_session(graph=tf.Graph()) as sess:
      v0 = tf.Variable(-1.0, name="v0")
      v1 = tf.Variable(-1.0, name="v1")
      save = tf.train.Saver([v0, v1])

      with self.assertRaisesWithPredicateMatch(
          tf.OpError, lambda e: "uninitialized value v0" in e.message):
        sess.run(v0)
      with self.assertRaisesWithPredicateMatch(
          tf.OpError, lambda e: "uninitialized value v1" in e.message):
        sess.run(v1)

      # Restore the saved values in the parameter nodes.
      save.restore(sess, save_path)
      # Check that the parameter nodes have been restored.
      self.assertEqual(10.0, v0.eval())
      self.assertEqual(20.0, v1.eval())

    # Build another graph with 2 nodes, initialized
    # differently, and a Restore node for them.
    with self.test_session(graph=tf.Graph()) as sess:
      v0_2 = tf.Variable(1000.0, name="v0")
      v1_2 = tf.Variable(2000.0, name="v1")
      save2 = tf.train.Saver([v0_2, v1_2])
      tf.initialize_all_variables().run()

      # Check that the parameter nodes have been initialized.
      self.assertEqual(1000.0, v0_2.eval())
      self.assertEqual(2000.0, v1_2.eval())
      # Restore the values saved earlier in the parameter nodes.
      save2.restore(sess, save_path)
      # Check that the parameter nodes have been restored.
      self.assertEqual(10.0, v0_2.eval())
      self.assertEqual(20.0, v1_2.eval())

  def _SaveAndLoad(self, var_name, var_value, other_value, save_path):
    with self.test_session() as sess:
      var = tf.Variable(var_value, name=var_name)
      save = tf.train.Saver({var_name: var})
      var.initializer.run()
      val = save.save(sess, save_path)
      self.assertEqual(save_path, val)
    with self.test_session() as sess:
      var = tf.Variable(other_value, name=var_name)
      save = tf.train.Saver({var_name: var})
      save.restore(sess, save_path)
      self.assertAllClose(var_value, var.eval())

  def testCacheRereadsFile(self):
    save_path = os.path.join(self.get_temp_dir(), "cache_rereads")
    # Save and reload one Variable named "var0".
    self._SaveAndLoad("var0", 0.0, 1.0, save_path)
    # Save and reload one Variable named "var1" in the same file.
    # The cached readers should know to re-read the file.
    self._SaveAndLoad("var1", 1.1, 2.2, save_path)

  def testGPU(self):
    if not tf.test.IsBuiltWithCuda():
      return
    save_path = os.path.join(self.get_temp_dir(), "gpu")
    with tf.Session("", graph=tf.Graph()) as sess:
      with sess.graph.device("/gpu:0"):
        v0_1 = tf.Variable(123.45)
      save = tf.train.Saver({"v0": v0_1})
      tf.initialize_all_variables().run()
      save.save(sess, save_path)

    with tf.Session("", graph=tf.Graph()) as sess:
      with sess.graph.device("/gpu:0"):
        v0_2 = tf.Variable(543.21)
      save = tf.train.Saver({"v0": v0_2})
      tf.initialize_all_variables().run()
      self.assertAllClose(543.21, v0_2.eval())
      save.restore(sess, save_path)
      self.assertAllClose(123.45, v0_2.eval())

  def testVariables(self):
    save_path = os.path.join(self.get_temp_dir(), "variables")
    with tf.Session("", graph=tf.Graph()) as sess:
      one = tf.Variable(1.0)
      twos = tf.Variable([2.0, 2.0, 2.0])
      init = tf.initialize_all_variables()
      save = tf.train.Saver(tf.all_variables())
      init.run()
      save.save(sess, save_path)

    with tf.Session("", graph=tf.Graph()) as sess:
      one = tf.Variable(0.0)
      twos = tf.Variable([0.0, 0.0, 0.0])
      # Saver with no arg, defaults to 'all variables'.
      save = tf.train.Saver()
      save.restore(sess, save_path)
      self.assertAllClose(1.0, one.eval())
      self.assertAllClose([2.0, 2.0, 2.0], twos.eval())

  def testSaveWithGlobalStep(self):
    save_path = os.path.join(self.get_temp_dir(), "ckpt_with_global_step")
    global_step_int = 5
    # Save and reload one Variable named "var0".
    self._SaveAndLoad("var0", 0.0, 1.0, save_path)
    for use_tensor in [True, False]:
      with self.test_session() as sess:
        var = tf.Variable(1.0, name="var0")
        save = tf.train.Saver({var.op.name: var})
        var.initializer.run()
        if use_tensor:
          global_step = tf.constant(global_step_int)
          val = save.save(sess, save_path, global_step=global_step)
        else:
          val = save.save(sess, save_path, global_step=global_step_int)
        expected_save_path = "%s-%d" % (save_path, global_step_int)
        self.assertEqual(expected_save_path, val)

class SaveRestoreShardedTest(tf.test.TestCase):

  def testBasics(self):
    save_path = os.path.join(self.get_temp_dir(), "sharded")

    # Build a graph with 2 parameter nodes on different devices.
    with tf.Session(
        target="",
        config=tf.ConfigProto(device_count={"CPU": 2})) as sess:
      with sess.graph.device("/cpu:0"):
        v0 = tf.Variable(10, name="v0")
      with sess.graph.device("/cpu:1"):
        v1 = tf.Variable(20, name="v1")
      save = tf.train.Saver({"v0": v0, "v1": v1}, sharded=True)
      tf.initialize_all_variables().run()
      val = save.save(sess, save_path)
      self.assertEqual(save_path + "-?????-of-00002", val)

    # Restore a different "v0" from shard 0 of the saved files.
    with tf.Session(
        target="",
        config=tf.ConfigProto(device_count={"CPU": 2})) as sess:
      with sess.graph.device("/cpu:0"):
        v0 = tf.Variable(111, name="v0")
      save = tf.train.Saver({"v0": v0}, sharded=True)
      tf.initialize_all_variables().run()
      self.assertEqual(111, v0.eval())
      save.restore(sess, save_path + "-00000-of-00002")
      self.assertEqual(10, v0.eval())

    # Restore a different "v1" from shard 1 of the saved files.
    with tf.Session(
        target="",
        config=tf.ConfigProto(device_count={"CPU": 2})) as sess:
      with sess.graph.device("/cpu:0"):
        v1 = tf.Variable(222)
      save = tf.train.Saver({"v1": v1}, sharded=True)
      tf.initialize_all_variables().run()
      self.assertEqual(222, v1.eval())
      save.restore(sess, save_path + "-00001-of-00002")
      self.assertEqual(20, v1.eval())

    # Now try a restore with the sharded filename.
    with tf.Session(
        target="",
        config=tf.ConfigProto(device_count={"CPU": 2})) as sess:
      with sess.graph.device("/cpu:0"):
        v0 = tf.Variable(111, name="v0")
      with sess.graph.device("/cpu:1"):
        v1 = tf.Variable(222, name="v1")
      save = tf.train.Saver({"v0": v0, "v1": v1}, sharded=True)
      tf.initialize_all_variables().run()
      self.assertEqual(111, v0.eval())
      self.assertEqual(222, v1.eval())
      save_path = os.path.join(self.get_temp_dir(), "sharded")
      save.restore(sess, save_path + "-?????-of-?????")
      self.assertEqual(10, v0.eval())
      self.assertEqual(20, v1.eval())

  def testSaverDef(self):
    with self.test_session():
      v0 = tf.Variable(123, name="v0")
      save = tf.train.Saver({"v0": v0}, sharded=True)
      sd = save.as_saver_def()
      self.assertTrue(sd.sharded)

class MaxToKeepTest(tf.test.TestCase):

  def testNonSharded(self):
    save_dir = os.path.join(self.get_temp_dir(), "max_to_keep_non_sharded")
    try:
      gfile.DeleteRecursively(save_dir)
    except gfile.GOSError as _:
      pass                      # Ignore
    gfile.MakeDirs(save_dir)

    with self.test_session() as sess:
      v = tf.Variable(10.0, name="v")
      save = tf.train.Saver({"v": v}, max_to_keep=2)
      tf.initialize_all_variables().run()
      self.assertEqual([], save.last_checkpoints)

      s1 = save.save(sess, os.path.join(save_dir, "s1"))
      self.assertEqual([s1], save.last_checkpoints)
      self.assertTrue(gfile.Exists(s1))

      s2 = save.save(sess, os.path.join(save_dir, "s2"))
      self.assertEqual([s1, s2], save.last_checkpoints)
      self.assertTrue(gfile.Exists(s1))
      self.assertTrue(gfile.Exists(s2))

      s3 = save.save(sess, os.path.join(save_dir, "s3"))
      self.assertEqual([s2, s3], save.last_checkpoints)
      self.assertFalse(gfile.Exists(s1))
      self.assertTrue(gfile.Exists(s2))
      self.assertTrue(gfile.Exists(s3))

      # Create a second helper, identical to the first.
      save2 = tf.train.Saver(saver_def=save.as_saver_def())
      save2.set_last_checkpoints(save.last_checkpoints)

      # Create a third helper, with the same configuration but no knowledge of
      # previous checkpoints.
      save3 = tf.train.Saver(saver_def=save.as_saver_def())

      # Exercise the first helper.

      # Adding s2 again (old s2 is removed first, then new s2 appended)
      s2 = save.save(sess, os.path.join(save_dir, "s2"))
      self.assertEqual([s3, s2], save.last_checkpoints)
      self.assertFalse(gfile.Exists(s1))
      self.assertTrue(gfile.Exists(s3))
      self.assertTrue(gfile.Exists(s2))

      # Adding s1 (s3 should now be deleted as oldest in list)
      s1 = save.save(sess, os.path.join(save_dir, "s1"))
      self.assertEqual([s2, s1], save.last_checkpoints)
      self.assertFalse(gfile.Exists(s3))
      self.assertTrue(gfile.Exists(s2))
      self.assertTrue(gfile.Exists(s1))

      # Exercise the second helper.

      # Adding s2 again (old s2 is removed first, then new s2 appended)
      s2 = save2.save(sess, os.path.join(save_dir, "s2"))
      self.assertEqual([s3, s2], save2.last_checkpoints)
      # Created by the first helper.
      self.assertTrue(gfile.Exists(s1))
      # Deleted by the first helper.
      self.assertFalse(gfile.Exists(s3))
      self.assertTrue(gfile.Exists(s2))

      # Adding s1 (s3 should now be deleted as oldest in list)
      s1 = save2.save(sess, os.path.join(save_dir, "s1"))
      self.assertEqual([s2, s1], save2.last_checkpoints)
      self.assertFalse(gfile.Exists(s3))
      self.assertTrue(gfile.Exists(s2))
      self.assertTrue(gfile.Exists(s1))

      # Exercise the third helper.

      # Adding s2 again (but helper is unaware of previous s2)
      s2 = save3.save(sess, os.path.join(save_dir, "s2"))
      self.assertEqual([s2], save3.last_checkpoints)
      # Created by the first helper.
      self.assertTrue(gfile.Exists(s1))
      # Deleted by the first helper.
      self.assertFalse(gfile.Exists(s3))
      self.assertTrue(gfile.Exists(s2))

      # Adding s1 (s3 should not be deleted because helper is unaware of it)
      s1 = save3.save(sess, os.path.join(save_dir, "s1"))
      self.assertEqual([s2, s1], save3.last_checkpoints)
      self.assertFalse(gfile.Exists(s3))
      self.assertTrue(gfile.Exists(s2))
      self.assertTrue(gfile.Exists(s1))

  def testSharded(self):
    save_dir = os.path.join(self.get_temp_dir(), "max_to_keep_sharded")
    try:
      gfile.DeleteRecursively(save_dir)
    except gfile.GOSError as _:
      pass                      # Ignore
    gfile.MakeDirs(save_dir)

    with tf.Session(
        target="",
        config=tf.ConfigProto(device_count={"CPU": 2})) as sess:
      with sess.graph.device("/cpu:0"):
        v0 = tf.Variable(111, name="v0")
      with sess.graph.device("/cpu:1"):
        v1 = tf.Variable(222, name="v1")
      save = tf.train.Saver({"v0": v0, "v1": v1}, sharded=True, max_to_keep=2)
      tf.initialize_all_variables().run()
      self.assertEqual([], save.last_checkpoints)

      s1 = save.save(sess, os.path.join(save_dir, "s1"))
      self.assertEqual([s1], save.last_checkpoints)
      self.assertEquals(2, len(gfile.Glob(s1)))

      s2 = save.save(sess, os.path.join(save_dir, "s2"))
      self.assertEqual([s1, s2], save.last_checkpoints)
      self.assertEquals(2, len(gfile.Glob(s1)))
      self.assertEquals(2, len(gfile.Glob(s2)))

      s3 = save.save(sess, os.path.join(save_dir, "s3"))
      self.assertEqual([s2, s3], save.last_checkpoints)
      self.assertEquals(0, len(gfile.Glob(s1)))
      self.assertEquals(2, len(gfile.Glob(s2)))
      self.assertEquals(2, len(gfile.Glob(s3)))

class KeepCheckpointEveryNHoursTest(tf.test.TestCase):

  def testNonSharded(self):
    save_dir = os.path.join(self.get_temp_dir(),
                            "keep_checkpoint_every_n_hours")
    try:
      gfile.DeleteRecursively(save_dir)
    except gfile.GOSError as _:
      pass                      # Ignore
    gfile.MakeDirs(save_dir)

    with self.test_session() as sess:
      v = tf.Variable([10.0], name="v")
      # Run the initializer NOW to avoid the 0.5s overhead of the first Run()
      # call, which throws the test timing off in fastbuild mode.
      tf.initialize_all_variables().run()
      # Create a saver that will keep the last 2 checkpoints plus one every 0.7
      # seconds.
      start_time = time.time()
      save = tf.train.Saver({"v": v}, max_to_keep=2,
                         keep_checkpoint_every_n_hours=0.7 / 3600)
      self.assertEqual([], save.last_checkpoints)

      # Wait till 0.7 second have elapsed so s1 will be old enough to keep.
      time.sleep((time.time() + 0.7) - start_time)
      s1 = save.save(sess, os.path.join(save_dir, "s1"))
      self.assertEqual([s1], save.last_checkpoints)

      s2 = save.save(sess, os.path.join(save_dir, "s2"))
      self.assertEqual([s1, s2], save.last_checkpoints)

      # We now have 2 'last_checkpoints': [s1, s2].  The next call to Save(),
      # would normally delete s1, because max_to_keep is 2.  However, s1 is
      # older than 0.7s so we must keep it.
      s3 = save.save(sess, os.path.join(save_dir, "s3"))
      self.assertEqual([s2, s3], save.last_checkpoints)

      # s1 should still be here, we are Not checking now to reduce time
      # variance in the test.

      # We now have 2 'last_checkpoints': [s2, s3], and s1 on disk.  The next
      # call to Save(), will delete s2, because max_to_keep is 2, and because
      # we already kept the old s1. s2 is very close in time to s1 so it gets
      # deleted.
      s4 = save.save(sess, os.path.join(save_dir, "s4"))
      self.assertEqual([s3, s4], save.last_checkpoints)

      # Check that s1 is still here, but s2 is gone.
      self.assertTrue(gfile.Exists(s1))
      self.assertFalse(gfile.Exists(s2))
      self.assertTrue(gfile.Exists(s3))
      self.assertTrue(gfile.Exists(s4))

class SaveRestoreWithVariableNameMap(tf.test.TestCase):

  def testNonReshape(self):
    save_path = os.path.join(self.get_temp_dir(), "basics")

    with self.test_session() as sess:
      # Build a graph with 2 parameter nodes, and Save and
      # Restore nodes for them.
      v0 = tf.Variable(10.0, name="v0")
      v1 = tf.Variable(20.0, name="v1")
      save = tf.train.Saver({"save_prefix/v0": v0, "save_prefix/v1": v1})
      tf.initialize_all_variables().run()

      # Check that the parameter nodes have been initialized.
      self.assertEqual(10.0, v0.eval())
      self.assertEqual(20.0, v1.eval())

      # Save the initialized values in the file at "save_path"
      # Use a variable name map to set the saved tensor names
      val = save.save(sess, save_path)
      self.assertTrue(isinstance(val, basestring))
      self.assertEqual(save_path, val)

      # Verify that the original names are not in the Saved file
      save = tf.train.Saver({"v0": v0, "v1": v1})
      with self.assertRaisesOpError("not found in checkpoint"):
        save.restore(sess, save_path)

    # Verify that the mapped names are present in the Saved file and can be
    # Restored using remapped names.
    with self.test_session() as sess:
      v0 = tf.Variable(-1.0, name="v0")
      v1 = tf.Variable(-1.0, name="v1")

      with self.assertRaisesOpError("uninitialized value v0"):
        sess.run(v0)
      with self.assertRaisesOpError("uninitialized value v1"):
        sess.run(v1)

      save = tf.train.Saver({"save_prefix/v0": v0, "save_prefix/v1": v1})
      save.restore(sess, save_path)

      # Check that the parameter nodes have been restored.
      self.assertEqual(10.0, v0.eval())
      self.assertEqual(20.0, v1.eval())

    # Add a prefix to the node names in the current graph and Restore using
    # remapped names.
    with self.test_session() as sess:
      v0 = tf.Variable(-1.0, name="restore_prefix/v0")
      v1 = tf.Variable(-1.0, name="restore_prefix/v1")

      with self.assertRaisesOpError("uninitialized value restore_prefix/v0"):
        sess.run(v0)
      with self.assertRaisesOpError("uninitialized value restore_prefix/v1"):
        sess.run(v1)

      # Restore the saved values in the parameter nodes.
      save = tf.train.Saver({"save_prefix/v0": v0, "save_prefix/v1": v1})
      save.restore(sess, save_path)

      # Check that the parameter nodes have been restored.
      self.assertEqual(10.0, v0.eval())
      self.assertEqual(20.0, v1.eval())

if __name__ == "__main__":
  tf.test.main()

redpajama_set_name: RedPajamaGithub


Create those magical moments and send roses! This mixed bouquet of assorted colorful blooms makes a beautiful hand delivered gift for someone special. With this romantic floral arrangement you won't just deliver flowers, but you'll be sending a charming expression of your most heartfelt sentiments. This rainbow rose bouquet measures approximately 17 inches high and around 14 inches wide. These bouquets are typically sent for a birthday, anniversary, or Valentine's Day flower delivery. If you're ordering gifts for your sweetheart as a romantic gesture, we recommend adding a teddy bear or chocolates as an additional present. No matter your choice, each centerpiece is attractively and lovingly arranged to wow your special recipient.


R.C. Baker has written art criticism for the Village Voice for 22 years. He's the author of dozens of features and hundreds of full- and half-page reviews for the paper, including cover stories ranging from an interview with the graphic novelist Jaime Hernandez to a survey of site-specific artworks lost or purposely destroyed in New York City, including Richard Serra's "Tilted Arc" and Philip Guston's WPA-era mural in the Queensbridge housing project.
Baker founded the Voice's weekly "Best In Show" column, with the mandate to cover not only art exhibitions but also graphic design, collected volumes of art criticism, and anything else that placed contemporary art in an informative and lively context for a general readership. He has also written for the Op-Ed page of the New York Times, and, most recently, traveled to Guatemala to write a catalog essay on Guatemalan conceptual artist Dario Escobar, to be published later this year.


text:
Internet Explorer lacks support for the features of this website. For the best experience, please use a modern browser such as Chrome, Firefox, or Edge.
NATIONAL OCEANIC AND ATMOSPHERIC ADMINISTRATION | U.S. DEPARTMENT OF COMMERCE
Facebook Instagram Twitter YouTube Mail |
Search NOAA Fisheries
Dolphins & Porpoises
Fish & Sharks
Highly Migratory Species
Seals & Sea Lions
All Threatened & Endangered Species
Species By Region
New England/Mid-Atlantic
Marine Life Viewing Guidelines
Marine Life in Distress
Report a Stranded or Injured Marine Animal
Species in the Spotlight
Fishing & Seafood
Catch Shares
Fishery Observers
Illegal, Unregulated, Unreported Fishing
Magnuson-Stevens Act
Research Surveys
Population Assessments
Resources for Fishing
Fishery Management Info
Rules & Regulations by Region
Commerce & Trade
Seafood Inspection
Atlantic Highly Migratory Species
Cooperative Research
Socioeconomics
Protecting Marine Life
Endangered Species Conservation
Health & Stranding Response
Take Reduction Plans
Ocean Acoustics/Noise
Unusual Mortality Events
Vessel Strikes
Permits & Authorizations
Regulations & Actions
U.S. Regional Ecosystems
Types of Habitat
Habitat by Region
Understanding the Impacts
Climate, Ecosystems & Fisheries Initiative
Regional Activities
New England/ Mid-Atlantic
Fisheries Rules & Regs
Fisheries Management Info
Protected Resources Regs & Actions
Protected Resources
International & Trade
Funding & Financial Services
Prescott Grants
Saltonstall-Kennedy Grants
Habitat Restoration Grants
Publication Databases
Laws & Policies
Teacher at Sea
Careers & More
Volunteering and Citizen Science
National Program Offices
Regional Fishery Management Councils
Marine Fishery Advisory Committee
State Partners
Non-Government Organizations
Fisheries COVID-19 Updates
West Coast Highly Migratory Species Fisheries and Gear
Highly migratory species include Pacific tunas, swordfish, sharks, and billfish. We provide a general overview of the fisheries and gear used to catch highly migratory species along the U.S. West Coast.
Commercial Passenger Fishing Vessel (CPFV)
U.S. Tuna Purse Seine
Swordfish Large Mesh Drift Gillnet
Deep-Set Buoy Gear
Pacific Albacore
West Coast Harpoon
Fisheries locations on the map and the fisheries descriptions available by the links below are intended to provide a general overview of the U.S. fisheries that catch highly migratory species and make landings along the U.S. West Coast. For specific details on West Coast highly migratory fisheries and their management, refer to published data sets made available annually in the Council's highly migratory species stock assessments and fishery evaluations (SAFE) documents, or regulations published in the Federal Register and codified in the Code of Federal Regulations, see 50 CFR part 300 and 50 CFR Part 600.
For more information or questions on Permits, contact wcr-permits@noaa.gov or 562.980.4238.
A number of anglers recreationally fish for highly migratory species (HMS) on CPFVs. CPFVs in Oregon and Washington often target North Pacific albacore tuna, while vessels fishing in waters off California target yellowfin tuna, Pacific bluefin tuna, albacore tuna, and dorado (dolphinfish or mahi mahi). A significant portion of HMS landed in California are also caught in the waters off Mexico on the aptly named "long-range" boats. Other HMS species captured on CPFV trips, though relatively infrequently, include thresher and mako shark. The CPFV fleet operates year round, but has a peak HMS fishing season in spring and summer. CPFVs come in all sizes, from the 20 foot "4-pack" to the 60 foot "party boat." On average, there have been over 200 CPFVs permitted to conduct trips targeting HMS at any point during the year. In recent years, anglers have been able to catch HMS species during any month of the year. Anglers are subject to recreational fishing bag limits with their catches constrained to boats limits for some species.
Many private vessels also engage in recreational fishing for HMS along the West Coast. Anglers on private vessels are also subject to recreational fishing bag limits. In 2018, over 38,000 albacore tuna, 4,000 dorado, and 4,000 yellowfin tuna were caught and landed by private boaters.
Recreational anglers typically use hook-and-line (rod and reel or pole-and-line), which is a hand-held fishing rod with a manually or electrically operated reel attached, though some anglers successfully target HMS using spearfishing gear.
Photos: NOAA Fisheries
There are two components to the U.S. tuna purse seine fishery in the eastern Pacific Ocean: (1) large purse seine vessels (greater than 425 cubic meters), and (2) coastal purse seine vessels with smaller fish hold volumes (between 54-212 cubic meters) that are based on the U.S. West Coast and only opportunistically fish for tunas. A purse seine net includes floats and weights and is used to encircle schools of fish. The net is enclosed using a purse line threaded through rings attached to the bottom of the net.
Large purse seine vessels: As of 2019, 17 purse seine vessels were registered to fish for tuna and tuna-like species on the IATTC Regional Vessel Register in the eastern Pacific Ocean. These purse seiners target skipjack and yellowfin tuna.
Coastal (small-scale highly migratory species): Small coastal purse seiners, less than 510 cubic meters in carrying capacity, primarily target pelagic species including Pacific mackerel, Pacific sardine, anchovy, and market squid. Some of these vessels also target Pacific bluefin, yellowfin, and skipjack tunas when those species enter coastal waters of the southern California Bight, typically from May to October. From 2002 to 2012, the number of vessels participating in this fishery ranged from 1 to 11, landing approximately 3,500 metric tons of highly migratory species, with a value for the fishery of approximately $3.3 million.
The West Coast large mesh drift gillnet fishery primarily targets and harvests swordfish, but also harvests other commercially valuable species such as thresher and mako shark, and opah. The majority of the drift gillnet fishing occurs from mid-August through January.
The fishery operates under a limited entry permit system with mandatory gear requirements and time-area closures, including the Pacific Leatherback Conservation Area Closure (PLCA) which prohibits drift gillnet fishing from August 15 to November 15 in roughly 213,000 square miles within the exclusive economic zone (EEZ). The PLCA was implemented by NOAA Fisheries in order to protect endangered leatherback sea turtles during the period when they are foraging off the West Coast.
Since the PLCA was enacted in 2001, the number of active participants in the fishery has declined from over 75 vessels in 2001 to approximately 21 in 2018.
The vessels in the fishery landed approximately 145 metric tons of swordfish and 26 metric tons of thresher shark in 2018. From 2001 to 2018 the average annual ex-vessel value for the fishery was $1.6 million.
A drift gillnet is an unanchored panel of stretched mesh (14 inches or greater) suspended vertically in the water by floats along the top and weights along the bottom. Regulations require large mesh drift gillnets fishing off the West Coast to be equipped with acoustic pingers and net extenders. These regulations were recommended by the Pacific Offshore Cetacean Take Reduction Team to minimize drift gillnet interactions with marine mammals.
FAQs - West Coast drift gillnet (DGN) fishery & protected species
Two Decades Later, Focused Efforts on Reducing Entanglements in Gillnet Fishery Still Paying Off
Deep-set buoy gear (DSBG) targets swordfish primarily from June through December. DSBG is a hook-and-line fishing gear that targets swordfish at depths between 200m and 400m during daylight hours. A surface buoy array allows for strike detection. Vessels may use up to 30 hooks at a time and must remain near the fishing gear to actively tend to the gear.
Beginning in 2011, a series of research fishing trials were conducted off the U.S. West Coast to develop this gear type. This initial research indicated that both standard and linked DSBG were effective for selectively targeting swordfish, with lower bycatch and protected species interactions than other common gear types such as drift gillnet and longline. These promising results led the Pacific Fishery Management Council (Council) to recommend that NOAA Fisheries issue exempted fishing permits (EFPs) to fishermen to expand testing of DSBG off of California and Oregon.
EFP fishing began in 2015, with approximately six vessels using DSBG through 2017. In 2018, approximately 27 vessels fished with DSBG under EFPs, landing 66.9 metric tons of swordfish round weight, and earning a total of $610,102 in revenues.
In September 2019, the Council made a final recommendation to NOAA Fisheries to authorize DSBG as a legal gear type under the Highly Migratory Species Fishery Management Plan. NOAA Fisheries is working to implement this recommendation. In the meantime, DSBG fishing continues under EFPs.
Diagram of Deep Set Buoy Gear by Jody Van Niekirk, NOAA Fisheries
Diagram of Linked Buoy Gear by Jody Van Niekirk, NOAA Fisheries
West Coast-based: This fishery targets bigeye and yellowfin tunas using deep-set longline gear during fall and winter. U.S. West Coast-based vessels must fish on the high seas outside of the exclusive economic zone (EEZ). The use of shallow-set longline gear is prohibited, both within the EEZ and on the high seas, under the Fishery Management Plan for U.S. West Coast Fisheries for Highly Migratory Species (HMS FMP). Tuna landings and ex-vessel value information for this sector is confidential and cannot be disclosed as less than 3 vessels have participated in the fishery since 2005.
Hawaii-based: This longline fleet offloads in California during the fall and winter and in Hawaii during the spring and summer. It is managed by NOAA Fisheries Pacific Islands Regional Office and the Western Pacific Fishery Management Council, and often fishes in the eastern Pacific Ocean.
As of 2019, there were 144 permitted Hawaii longline vessels, out of a possible 164 in the limited-entry fishery. The fishery can be subdivided into two parts based upon the gear used: shallow- or deep-set. The shallow-set longline fishery operates with 100 percent observer coverage and targets swordfish. The deep-set longline fishery operates with 20 percent observer coverage and targets tuna. The entire longline fishery lands between 7,000 and 12,000 metric tons of migratory species annually with a value for the fishery of approximately $78 million.
A longline is comprised of a dropper line which suspends a drifting main line that extends horizontally in the water column from which gangion lines with hooks are attached.
Photo: NOAA Fisheries
North Pacific: This fishery operates across the North Pacific and along the U.S. West Coast, both inside and outside of the U.S. exclusive economic zone (EEZ). Fishing typically takes place from June through October annually. The U.S. commercial vessels that fish for albacore use troll/jig gear (surface hook-and-line) and pole-and-line gear (baitboat). The United States - Canada Albacore Treaty extends U.S. fisherman access to fish in Canadian waters and Canadian fisherman access to fish seaward of 12 miles offshore of both nations. From 2013-2017, an annual average of 589 vessels permitted by the United States and Canada participated in this fishery and landed an annual average of 10,859 metric tons of albacore with an average annual value for the fishery of approximately $36.2 million.
South Pacific: This fishery is comprised of vessels that fish with longline or troll gear on the high seas, outside of any nations' EEZ. Albacore fishing in the south Pacific occurs from November through April. Many of the vessels that participate in this fishery also participate in the larger North Pacific albacore fishery. For the 2010-2011 fishing season, fewer than 10 West Coast-based vessels participated in the South Pacific fishery, landing approximately 400 metric tons.
Trolling vessels like the ones below, attach 10-20 fishing lines of various lengths to the outriggers to target albacore tuna.
Trolling vessels. Photos courtesy of American Albacore Fishing Association/Natalie Webster.
The harpoon fishery targets swordfish basking in surface waters. These fish are mainly encountered within the Southern California Bight from May through December, with the peak season occurring between July and September. From the 1900s to 1980s harpoon gear was the primary gear for harvesting swordfish, but in the early 1980s many fishermen switched to large mesh drift gillnet. In 2018, 14 vessels landed approximately 10 metric tons of swordfish with a value for the fishery of about $132,000.
Harpoon gear includes a pole or stick that is propelled only by hand, and not by mechanical means. The gear consists of either a pointed dart or iron attached to the end of the line several hundred feet in length. The other end is attached to a floatation device. Spotter planes are sometimes used to assist harpoon fishermen in locating basking swordfish.
Photos: Pfleger Institute of Environmental Research (PIER) (top); Scott Burke (bottom).
West Coast Highly Migratory Species
Fisheries Management on the West Coast
Fisheries Observed by the West Coast Region Observer Program
Last updated by West Coast Regional Office on 06/21/2021
Pink salmon. Credit: NOAA
Salmon on the High Seas: Unlocking the Mystery of Salmon in the North Pacific
Leadership Message
Leading the Fight Against IUU Fishing
President Signs New Executive Order Promoting American Seafood Competitiveness and Economic Growth
Reeling to Rebuilding: Success for West Coast Groundfish Fisheries
Stay informed of all the latest regional news around NOAA Fisheries
FishWatch
For Fishermen
NOAA Staff Directory
Tour Our Site
How are we doing? Send us your feedback
Policies & Disclaimer


text:
Urban Wire How the Tax Cuts and Jobs Act puts affordable housing production at risk
Corianne Payton Scally, Amanda Gold, Nicole DuBois
References to the Tax Cut and Jobs Act in this post have been corrected to the Tax Cuts and Jobs Act. (Updated 07/16/19).
Recent headlines have focused on US Department of Housing and Urban Development (HUD) secretary Ben Carson's proposal to raise rents for low-income households who receive public housing assistance. But less attention has been paid to a federal program instrumental in producing and preserving affordable rental housing and whose effectiveness could be blunted by the 2017 Tax Cuts and Jobs Act (TCJA).
The Low-Income Housing Tax Credit (LIHTC) program is the longest-running federal program for building new affordable rental housing units and preserving older units built under other federal housing assistance programs. Based on our new analysis of the National Housing Preservation Database, we determine that LIHTC has produced or preserved roughly 2.3 million unique units of affordable housing for eligible low-income households since 1987.
But as we explore in the analysis, the LIHTC program is vulnerable to market downturns and changes in the tax code because it provides financing to developers through a federal income tax credit to private investors.
The TCJA slashed the corporate tax rate to 21 percent, decreasing financial incentives for corporations—the largest LIHTC investors—to make equity investments in tax credits. Historically, LIHTC has performed poorly when investment interest wanes, and industry sources have estimated that LIHTC production could decline by 235,000 units over the next 10 years.
A temporary increase in the amount of available LIHTC credits in the March 2018 omnibus appropriations bill—12.5 percent for the next four years—might help more projects access financing, but the ability of any funded project to raise the full equity investment needed is uncertain.
As rents rise and incomes stagnate, changes in the LIHTC program's production could have serious consequences for communities dependent on it for their supply of affordable rentals.
Why LIHTC is crucial for affordable housing
LIHTC fills a widening gap between rents and incomes by providing direct incentives through the tax code for private investment in affordable housing. The national supply of affordable rental units lags behind demand, leaving few units available for households with below-average incomes.
Although rental construction has picked up since the Great Recession, much of this development has targeted high-end luxury units affordable only to high-income households. Median incomes have been increasing, but so have rents, meaning nearly half of renters spend more than 30 percent of their income on rent.
LIHTC is critical for preserving and expanding the existing affordable housing stock, particularly because funding for new units through other federal assistance programs such as public housing and project-based Section 8 (property-specific rental assistance to landlords and tenants) has either ended or dropped significantly over the past several decades.
LIHTC is also popular. The program typically enjoys bipartisan support, and it is backed by both affordable housing advocates and the homebuilding industry. LIHTC transactions also benefit a network of partners, including owners and developers, equity investors, state and local governments, and tenants.
LIHTC is vulnerable to market downturns
Despite broad support, LIHTC investments faltered during the Great Recession. Investor demand for tax credits dried up. The average amount of equity an investor was willing to pay for each dollar of tax credit written off their federal income tax dropped to a 15-year low.
Deals collapsed for tens of thousands of units in projects that won a tax credit allocation in 2007 or 2008 but were unable to attract private investment. Annual production and preservation investments plummeted 47 percent from a prerecession peak of 116,175 units in 2004 to a low of 61,400 units in 2010.
The federal government authorized two programs to offset declining investments during the Great Recession. The Tax Credit Assistance Program, run by HUD, provided an additional $2.25 billion to state housing finance agencies to fill funding gaps in projects that already won a LITHC allocation but whose investors might have pulled out during the recession.
The Tax Credit Exchange Program allowed state housing finance agencies to exchange unused tax credits from 2007 to 2009 for a grant from the US Treasury. These programs helped fund 1,770 projects with up to 135,000 new low-income rental units (some units may have received funding from both sources and would be counted twice).
Although neither program is financing new units today, all the units they placed in service are still within the 30-year affordability period. Even with this support, LIHTC production has not recovered to prerecession levels, based on available data.
What the future might hold for LIHTC
LIHTC is central to the preservation and production of affordable rental housing, but it was absent from TCJA considerations and has faced other threats under various Trump administration budget proposals. It has struggled to attract private investment during prior periods of investor uncertainty and will continue to do so. We need long-term solutions for LIHTC focused on answering key questions:
How will the TCJA affect LIHTC? How does this vary across different housing markets and geographies?
How dependent is LIHTC on other federal funding streams, including capital development and rental assistance programs? How can this inform the distribution of federal resources to most efficiently support LIHTC properties?
As affordable rental housing shortfalls deepen, we need to monitor the impact of tax reform on the LIHTC market. It is unclear whether the administration will address the projected shortfall of affordable housing produced or preserved by LIHTC. Should this critical social safety net program falter, we will need creative solutions to keep the production and preservation of affordable rental housing going.
Research Areas Housing
Tags Housing affordability Taxes and social policy From Safety Net to Solid Ground
Policy Centers Metropolitan Housing and Communities Policy Center


text:
Mr.Ajith Naragala has been appointed as the new Chairman of the Development Lotteries Board.
Mr.Ajith Naragala assumed duties as the new Chairman of the Development Lotteries Board. Mr.Ajith Naragala, a former Director General of the Sri Lanka Rupavahini Corporation, has also served for a long time as the Director General of Operations of the National Youth Services Council. He has also held various positions in several government institutions including the Ministry of Finance, the Ministry of Higher Education and the Ministry of Economic Development.
Mr.Ajith Naragala, who has also been the Head of Sales at the National Savings Bank, has also been the Head of Sales at the Metropolitan Group of Companies, a leading private company in the country. He is also the Managing Director of Luxury Caring Pvt.
Ajith Naragala is an External Lecturer in the Department of Mass Communication at the University of Kelaniya as well as an External Lecturer in Management at the University of the Visual and Performing Arts. He is currently the Senior Vice President of the Sri Lanka Institute of Athletics. Ajith Naragala, who has also been the CEO of Colombo Television, is an experienced manager in the local media industry.
He has a unique ability in the management of national and international special occasions. He has been a key operator on a number of special occasions, such as the Championship.
He has also represented Sri Lanka at various United Nations Conferences. Mr.Ajith Naragala holds a number of responsibilities in various fields and is a Post Graduate in Management from Mahatma Gandhi University, India.
Development Lotteries Board Celebrates 39th Anniversary
All night pirith chanting ceremony has been organized to bless H.E.the President, Hon Prime Minister and all Sri Lankans and to mark the 39th anniversary of DLB. Further alms giving also took place with 39 monks inthe morning. Hon. Rohitha Abeygunawardana, Minister of Ports and Shi...
DLB Dealer Meeting of the Puttalam concludes successfully
The meeting of the Sales Agents of the Puttalam district, which is a part of the programme ' Sanwardana Abhiman' organized by Development Lotteries Board with a view to encourage and motivate the sales network spread all over the Island, has been held successfully at Chilaw City ...
Another Dealer Meeting concludes successfully in Kegalle
The meeting of the Sales Agents of the Kegalle district, which is a part of the programme ' Sanwardana Abhiman' organized by Development Lotteries Board with a view to encourage and motivate the sales network spread all over the Island, has been held successfully at Sleek Hotel, Kegal...
Our forerunners, who bring you a bright future
Life cannot be confined in a certain borderline, there should be space to explore the meaning of life.Even though the majority tends to make selections based on the facts such as gender, education, anyone can make a turn in his life, which opens such person more successful ways than in the public...
When someone overhears the word 'Development Lottery' the first impression he gets is that the lottery brings luck only to those who buy lottery tickets. But even today there are a large number of individuals who have made their path for success joining hands with Development Lottery....
Were you one of those three hundred thousand students, who pursued the goal with the help of Mahapola scholarship?
Are you aware of the financial provider, who makes every effort to lend hand to the students of the country extending Mahapola Scholarship, which once brought you under its shelter?
Most probably you may have no idea.
It is the human nature that we normally forget easily the giant...


Ladies and gents, Hollywood's most eligible bachelor Leonardo DiCaprio is single once again!
To make matters more interesting, it seems that his split from Sports Illustrated model Kelly Rohrback is actually old news, seeing as Us Weekly reports that the couple have been broken up for more than a month now.
According to an insider, the two called it quits because they just didn't have enough time for each other due to their busy working schedules. The well-informed source also said that there's no chance they'll get back together, but added that they have remained friends.
We do have to admit that they don't look brokenhearted, as Leo is excited about Sunday's Golden Globes (and spending time on a yacht in St.Barts) and Rohrback was cast in Pamela Anderson's role in the upcoming Baywatch remake on Monday.
Next Story → Are Miley And Liam An Item Again?


Reading @ Incontro Italia Lucerne (CH) on 24th March 2017!
I'm really looking forward to this reading!
Grazie mille Rossana Muzzì for hosting me and lovely thanks to Markus Roth, photo@rothclan.ch, it was great to work with you on the flyer! © Pic by Markus Roth.


text:
Branch Office Directors
Sarah Zullo
Managing Director, African Community Center (ACC), D.C. Metro
Sarah Zullo oversees social service support programs targeting African newcomer communities in the Washington, D.C., area. The programs address employment and job placement, cultural adjustment, domestic violence prevention, health education, housing, immigration, interpretation and translation, information and referral, refugee resettlement, and youth life skills. Prior to coming to Arlington, Ms. Zullo worked for the ECDC African Community Center in Denver for nearly four years, serving as Resettlement Manager for almost two years of that time. Since moving to Arlington in 2012, Ms. Zullo worked as ECDC's Special Programs Officer at the national level. She holds an M.A. in Public Administration from the University of Colorado. Her prior work experience includes working as a Volunteer Resources Manager and a TANF Project Job Developer. She also served as an intern in the Office of the Colorado State Public Defender. In addition to English, she speaks Amharic, French, and Spanish.
Milan Devetak
Director, African Community Center, Las Vegas (ACC/LV), D.C. Metro
Milan Devetak oversees the Reception and Placement, Matching Grant, Refugee Social Services, Intensive Case Management and Refugee Cash Assistance programs, as well as resource development and capacity building at ACC/LV. He is responsible for program leadership and guidance, design and expansion, policy decisions and monitoring ACC/LV's activities and outcomes.
Prior to becoming the Director of ACC/LV, Mr. Devetak worked for Catholic Charities of Southern Nevada for nearly four years as Director of Resettlement Services. Prior to this, he worked for ECDC-ACC/LV for a year as Resettlement Manager.
Mr. Devetak also worked in the adult education field for over seven years as Literacy Program Manager and ESL Teacher, as well as overseas for World Learning and USAID, under the auspices of the United States Embassy in Belgrade, Serbia.
He holds a Bachelor of Science degree in Business Administration and Management from the University of Nevada, Las Vegas, as well as the State of Nevada License for Educational Personnel. In addition to English, he speaks Serbian and Croatian and has a working knowledge of Spanish.


text:
Home/News/WWE's Roman Reigns says he'll return as leukemia in remission
WWE's Roman Reigns says he'll return as leukemia in remission
WWE star Roman Reigns — whose actual title Joe Anoa'i — introduced Monday night time that his leukemia is in remission and that he intends to return to ring motion.
Reigns, 33, stepped away from the WWE in October by asserting that, 11 years after he had first battled leukemia, the illness had returned. He vacated the WWE Common championship at the moment and stepped away from the limelight to battle the illness.
Because the "Monday Night time Uncooked" crowd on the State Farm Enviornment in Atlanta cheered him on, Reigns walked to the ring, did a lap to greet the followers at ringside, after which spoke to the WWE crowd for the primary time in 4 months.
"Preventing with My Household" showcases the journey and challenges for Paige and her brother Zak as they made their manner by the world of wrestling.
After talking about his religion in God, the great outreach from WWE followers and the prayers and messages shared over the previous few months, Reigns revealed an replace on his situation.
"The excellent news is, I am in remission, y'all," Reigns stated. "With that being stated, the large canine is again."
Earlier than becoming a member of the WWE in 2010, Reigns performed soccer for Georgia Tech in Atlanta, the place he was a three-year starter and an all-ACC defensive sort out.
"I missed y'all. There isn't a different job like this," Reigns stated. "There is no different fan base such as you guys."
Reigns didn't specify when he would formally return to motion. In January, his cousin, Dwayne "The Rock" Johnson, introduced that Reigns will play his cousin within the upcoming movie "Hobbs & Shaw."
Convention Match Championship Week: Breakdown and Preview of the Prime Conferences
VIDEO: Younger Yankees Fan Who Doesn't Need Machado is the Way forward for Sports activities Radio
DJ, Tiger, Rory, Kuchar and why there is no means it will be a boring weekend in Mexico
7 Prospects With the Most to Achieve
Jim Boeheim Reportedly Hits, Kills Man With Automotive


text:
Q: Powershell - Make SecureString available for other user I've an application in which I have to store a password. This application is getting called with the SYSTEM user. I am already obfuscating the script and storing it in a secure location.
Now my question: Is is there any possibility to create a SecureString which can be decrypted by one or more other users?
I've read about the possibility to encrypt it with a key and then store this key in a file, but in my opinion this is nothing else than a obfuscation, because everybody who can access the key file can decrypt the password.
Thanks for your help :)
EDIT: To clarify my question: I'd like to know if there is another solution to this than using a key file.

A: Yep, it's common to know that, if you force a user to enter a secure string, it can be reversed by the person who entered it, using
$credential = Get-Credential
$credential.UserName
$credential.Password

# Results
<#
cmdlet Get-Credential at command pipeline position 1
Supply values for the following parameters:

$credential.UserName
testuser

$credential.Password
System.Security.SecureString
#>

Or using .Net namespace. So, how about taking the approach of storing the credential in Windows Credential Manager on the user machine. In your app install, you dynamically generate creds to store that you'd then use for execution. Whenever they run your code, your code calls the creds from Credential Manager, without user interaction.
There several modules in the MS PowerShellGallery.com, easily accessed and deployed on systems when targeting credential manager use.
Find-Module -Name '*credential*'

<#
Version              Name                                Repository           Description
-------              ----                                ----------           -----------
2.0                  CredentialManager                   PSGallery            Provides access to credentials in the Windows Credential Manager
...
1.0.11               pscredentialmanager                 PSGallery            This module allows management and automation of Windows cached credentials.
4.5                  BetterCredentials                   PSGallery            A (compatible) major upgrade for Get-Credential, including support for storing cred...
0.0.1                SecureCredentials                   PSGallery            This module allow to secure store encrypted credentials for running powershell daemon
1.1.7                CredentialStore                     PSGallery            CredentialStore saves powershell credentials securely to file
...
1.1                  CredentialsManager                  PSGallery            The module Credentials Manager provides you with convenient and safe way to store y...
...
1.0.2                CredentialManagement                PSGallery            Manage Credentials stored in the Windows Credential Manager
1.1.0                PSCredentialTools                   PSGallery            PSCredentialTools provides various methods for securely storing and retrieving cred...
1.1                  New-Credential                      PSGallery            Simply creates an object (System.Management.Automation.PSCredential) that can be us...
...
#>

redpajama_set_name: RedPajamaStackExchange


text:
Q: Biztalk receive location looking at MSMQ I am trying to set up a receive location to pick up messages for MSMQ which have a particular label.
I have the URI correct and everything else in the BizTalk application is OK, but there are 2 things I'm unsure of and can't find any decent material to refer to:
How do I ensure BizTalk only picks the messages I'm interested in from the queue?  Surely this is not in the receive shape filter, as that would mean every message making it's way there before being evaluated?
I assume I need to code something to pick up the messages from the queue in the first place and send them to BizTalk?

A: As far as I know, the MSMQ adapter in BizTalk does not allow this type of behavior. There are several other queuing technologies - like MQSC and JMS for example - which allow you to subscribe to a topic for example, but not MSMQ.
You would be best to filter messages beforehand (based on your criteria) on a separate queue for BizTalk server. With that I am assuming other messages are not supposed to be handled by BizTalk Server, but by another solution.
In case other messages would still be handled by BizTalk Server, just retrieve all messages and you can make optimal use of the publish/subscribe architecture deeply embedded in BizTalk Server.


text:
The long reach of the Liebherr R9250
by Contrafed PUblishing June 16, 2016 July 4, 2016
One of the largest excavators used in this country for civil construction, the Liebherr R9250, has arrived from a mining site in Panama for underwater work in Auckland. By ALAN TITCHALL.
AT 250 TONNES it wasn't the largest excavator in the country – that title goes to a 400 tonne R9400 monster working at Rotowaro opencast mine – but it is not common to see a machine of this size on a civil construction project.
With shovel attached, the Liebherr R9250 weighs in at 253,000 kilograms. The machine is designed for high productivity mining sites and smartly filling fleets of 100 tonne dump trucks.
So how it ended up working on the first new wharf to be built at the Ports of Auckland since the early 1980s is a long story, and involves a mine in Panama, three months of assembly, Tranzcarr Heavy Haulage, Heron Construction and Brian Perry Civil.
First new wharf in three decades
Ports of Auckland obtained consent for an extension of the Fergusson container terminal upgrade back in 1998. This included construction of a new east-west wharf at the end of the old, 650-metre Fergusson wharf (the longest container wharf operated by Ports of Auckland).
In 2015 the port was in the news for a project to extend two wharves at the other end of the port a bit over 90 metres north into the harbour. Consent for this project was revoked by the High Court after a media beat-up and public commotion about stealing harbour views.
The new Fergusson wharf goes east-west, or parallel to the city shoreline, so is less contentious. This project has a total value of $50 million including the pavement and services works required to connect to the structure and is expected to take 18 months to complete. It will be 300 metres long and 33 metres wide, or big enough to handle one large container ship.
Ports of Auckland has contracted Brian Perry Civil to build the wharf and its subcontractor, Heron Construction, to build the sub-sea infrastructure, which involves preparing the sub-sea reclamation slope with mud-crete and protecting it from tides, waves and container ship wash with rock armour placed on the revetment/batter. A six-metre 'toe trench' at the bottom of the reclamation slope also has to be dug out to 'gravity anchor' and restrain the sloping wall of rock.
The search for gear
Greg Kroef, the managing direct of Heron Construction, says he went looking for a suitable machine for the job and found it working in Panama for a Belgian mining company. He couldn't believe his luck, because not only was the Liebherr R9250 going for a good price, it also came with an extra-long arm (never used) ideal for the dredging work on the wharf project.
"When that work is finished we have an older Liebherr machine working in Melbourne's harbour that needs replacing. So we will take this machine off its tracks and ship it over there to replace it," says Greg.
The machine arrived in Auckland in many parts.
It took over three months to put it together, including fitting the new arm and reconditioning some of the hydraulics.
Rather than using the traditional open hydraulic circuit on its arm, the R9250 uses a closed-loop swing circuit to enable maximum swing torque while retaining the full oil flow for the working circuit. The independent swing circuit in combination with the powerful drive system leads to very fast arm motion for something of this size.
The re-assembly of the excavator required so much room that it had to take place at the end of Bledisloe Terminal close to where the cargo ship discharged its consignment of excavator parts. Specialists from Liebherr were involved.
The problem now was that the assembly site was about 2.5 kilometres away from the project site. The excavator was ready by the end of March and Tranzcarr Heavy Haulage was engaged to move it to the construction site. The Auckland-based company used a 20-axle Goldhofer (UT) platform trailer to move the excavator to the end of Fergusson Wharf. The trailer was slipped under the machine, which was lifted up so it straddled the trailer in its middle. Three trucks were on standby for the hauling exercise but, in the end, it was completed by a single Kenworth.
Northland aggregate
The basalt rocks used on the new terminal project are quarried by Puhipuhi Rock & Metal Supplies in Whangarei, average 2.5 tonnes each and will be placed in a three-metre thick layer on the revetment slope. The boulders are being transported to the old Whangarei Port on the Hatea River and then barged to Auckland. Each barge carries around 1200 tonnes of rock and the project will use about 60,000 tonnes in total.
The 250 tonne excavator sits out over the harbour on some of the 300 piles already driven into position (to a depth of 40 metres), lifts the rocks off the barge and positions them very accurately underwater through a GPS system on the boom. A layer of smaller underlayer rock is placed first with the large rocks placed individually on top with an orange peel grab.
A screen in the excavator also allows the driver to 'see' what's happening underwater. The spacious cab on this excavator is mounted on silent blocks, which reduces vibrations and limits noise. The cab also has a panoramic view over the entire machine and loading spot.
Which makes you wonder just how they built the original Auckland wharves and reclamation in the mid-19th century with the technology of the day?
Subscribe to Contractor Magazine >>
20-axle Goldhofer (UT) platform trailerBrian Perry Civilcivil construction projectHeron Constructionhigh productivity mining sitesLiebherr R9250Northland aggregatePorts of AucklandPuhipuhi Rock & Metal SuppliesRotowaro opencast minesub-sea infrastructurethe Fergusson container terminalthe old Whangarei PortTranzcarr Heavy Haulage
Saving Paekakariki Hill Road
Contractor Magazine (May 2016)
Don't try this on the motorway
Contrafed PUblishing August 30, 2014 March 8, 2016
Parting words from Jeremy Sole- a final column
Contrafed PUblishing November 27, 2014 May 26, 2016
Crushing big time
Contractor Magazine (August 2016)
Contrafed PUblishing August 22, 2016 August 22, 2016
On the cover: Customer demand driving growth at Hirepool Coverlines: A tomorrow's leader...
Downer trainee takes out Connexis Trainee of the...
Contrafed PUblishing December 7, 2016 December 5, 2016
Updating IPWEA
Jonathan Whittaker August 3, 2018 August 1, 2018
Why Government needs to take water funding seriously
Contrafed PUblishing March 26, 2015 May 27, 2016
Concerns over pavement quality
Contrafed PUblishing June 21, 2016 June 22, 2016


text:
Q: JS- SyntaxError: Identifier 'Client' has already been declared 'user strict';

const { Discord, Client, MessageAttachment } = require('discord.js');

const client = new Discord.Client();

client.on('ready', () => {
  console.log('I am ready!');
});
//reply to certain messages... start...
client.on('message', message => {
 if (message.content === 'ping') {
   message.send('pong');
  }
});

client.on('message', message => {
  if (message.content === 'ding') {
    message.channel.send('dong');
  }
});
//...end

//avatar url... start...
client.on('message', message => {
  if (message.content === 'qavatar') {
    message.reply(message.author.displayAvatarURL());
  }
});
//...end

//attachment images... start...
const { Client, MessageAttachment } = require('discord.js')

client.on('message', message => {
  if (message.content === 'qrip') {
    const attachment = new MessageAttachment('https://i.imgur.com/VyiVReC.jpg');
    message.channel.send(attachment);
  }
});

client.login('My Token');

I am trying to create a discord bot, but each time I try to execute the code, I get the error in the title... I am new to JavaScript and Discord Js... I am sorry if this seems silly, but I would be happy if someone could help...

A: You are destructing the Client again in const { Client, MessageAttachment } = require('discord.js')


"How can candy be good for you?" you ask.
Well, the dehydrated cane juice and the honey aren't, but everything else is just fine and some, downright essential. The coconut oil is especially beneficial.
• The fats in coconut oil are not stored in the body as fat.
So how do you make coconut chocolates? It's really easy, no real cooking involved. The only disadvantage? Washing the food processor afterward!
One thought on ingredients: get sprouted almonds, if you can! All nuts have phytic acid in them, and phytic acid sweeps necessary minerals like calcium out of the body. Sprouting the nuts gets rid of the phytic acid and makes other nutrients more bio-available.
Grind the almonds and hazelnuts in a food processor. I try to grind them down to a nut butter. My family prefers "smooth" to "crunchy," but keep your own preferences in mind when deciding how much to process the nuts.
Add the butter and coconut oil and process again. You can probably skip this step – just dump the rest of the ingredients in – but I like to get the "batter" silky smooth!
Now add the honey, evaporated cane juice, cocoa powder, and shredded coconut. Process until blended and smooth.
Next pour the "batter" into ice cube trays. If the weather is really cool, you might need to spoon it in. Coconut oil is liquid in Virginia's summer, but solid in winter. The other thing you can do is warm the coconut oil before you add it to the processor. That keeps the "batter" pourable.
The other thing to consider is acquiring some trays designed for bottle-sized ice cubes. Helps to keep the chocolates bite sized.
Unfortunately, my freezer doesn't truly have room. (Cheating a little on that photo!) I have to stack the trays, and I don't want chocolate smeared all over their bottoms. So I wrap. You'll see it in the photo where the chocolates come out of the freezer.
If you'd like to learn more about the benefits of coconut oil – there's way more than the three points I listed above – I have a post!
But you knew I did, didn't you?
This entry was posted in Good Eats, Recipes and tagged coconut, dessert by J.M. Ney-Grimm. Bookmark the permalink.