text:
#144: Viral TikTok Star MurphsLife On Using Social Media to Change Lives
My guest this week is Aaron Murphy – known on Instagram and TikTok as simply @MurphsLife. Aaron is best known for sharing heart-warming videos that go viral every week, showcasing himself and his team providing direct relief to people they meet in places like Ecuador, Colombia, Peru and Venezuela. Not only do Aaron and his team provide immediate relief in the form of money, food, shelter and medical treatments – they also give employment opportunities and self-sustaining businesses to those in need. Incredibly…social media makes it all possible as followers of @MurphsLife make regular contributions to keep the charity running.
Get ready to hear about Aaron's mission to help the less fortunate, and how YOU can help too!
Aaron joins the show discussing who he is and what his charity, MurphsLife Foundation, does. [2:20]
The first person that Aaron helped through creating video content is described. [8:24]
Why Aaron began using TikTok is explained. [9:54]
The number of families Aaron has helped is touched on. [14:28]
Aaron discusses his calling in life and what the future holds. [17:38]
Recharging and the importance of taking time alone is explained. [20:52]
The method that Aaron uses to find the people he needs to help is detailed. [21:42]
The locations Aaron has visited and where he wants to go next is touched on. [26:20]
The best way to support Aaron, other than donating money, is explained. [27:56]
Aaron describes how helping people is a spiritual education. [31:14]
"I put the video on TikTok and it had like a million views the next day and that really allowed donations to come in, to where I'm like 'okay cool, I'm going to start building businesses.'" [14:12-14:22]
"I feel like life is about giving and receiving." [19:15-19:17]
"It's not always easy taking care of humanity, it's not always easy taking care of your neighbours but it's worth it." [32:43- 32:51]
Website: https://www.murphslifefoundation.com/
TikTok: https://www.tiktok.com/@murphslife
YouTube: https://www.youtube.com/user/MURPHSLIFE
Instagram: https://www.instagram.com/murphslife/
Facebook: https://www.facebook.com/murphslifee
Twitter: https://twitter.com/MURPHSLIFE


text:
LAFF time!
Next week I'm going to Austin for the always-amazing Ladies Are Funny Festival. Look at my lovely mug on their homepage! Check it here, pussycats.
Posted by Selena Coppock at 1:31 PM No comments:
Tomorrow night!
Pussycats!
CONNOTATION is back at LUCA LOUNGE (our old Kentucky home!) tomorrow night at 7:00pm. We have killer stand-up from
Victor Varnado (Tell Your Friends Movie)
Becky Yamamoto (Supercream Supreme)
Jon Fisch (Comedy Central, VH1)
Jess Wood (Def Comedy Jam)
and the CONNOTATION team,
Selena Coppock (McSweeney's)
Emily Epstein (Rooftop Comedy)
Dan Cartwright (The Check Spot)
Yes, the Connotation team is JUST LIKE Three's Company! Heeeyo!
See you at Luca Lounge (Ave B between 13/14) at 7:00!
Review of Hamilton Show
Hamilton's campus newspaper, The Spectator, wrote up a review of our alumni comedy show. The review is called "Who Knew That Alumni Were Funny?" which is a fantastically back-handed title. Proving yet again that college students seem to think the world revolves around them, and I've officially become old and crotchety.
Posted by Selena Coppock at 7:46 AM 2 comments:
I received an email from a good friend this morning informing me of some HUGE concert news. On Friday 4/8 (as in, mere days from today), there is going to be a concert at Irving Plaza in NYC and that concert will showcase the melodic voices of 1990s Irish bad boys House of Pain.
We all know that my music taste is "special" (awful or amazing, depending on who you are), but we can all agree that back in 1992-1993, "Jump Around" was a huge hit. They ragged on cops for eating donuts! They featured tennis enfant terrible John McEnroe in a rap song! The referenced a story from the New Testament! (That story is the Prodigal Son from the book of Luke. I gotta give props to the book of Luke—as religious texts go, it's a real page-turner. Good enough to be source material for the musical "Godspell.") "Jump Around" was crazy catchy, all over the airwaves, and a favorite song of my older sister's then-boyfriend, which made it the coolest song ever. He would come pick her up for dates and I would eagerly answer the door. The brim of his baseball hat was so thoroughly bent that I couldn't even see his eyes. During the year of 1993 and in my eight-grade girl brain, a brim so bent that it nearly obscured your entire face was the mark of coolness.
House of Pain was all about Irish pride, which appealed to me and many of my Boston-based friends. Plus, many of us mistakenly thought DJ Lethal, Danny Boy, and Everlast were from Boston. Put a dude in a Celtics jersey for a few promotional photos and stupid kids will automatically think he's a Boston-bred white rapper. Turns out they're all from Orange County, CA and DJ Lethal is Latvian, not Irish. No matter—I bought all three of their albums. Yes, there were three. No, they didn't simply hang it up after that first album. They kept plugging for far too long and I was probably the only loser buying their albums. Let's take a walk down memory lane, shall we?
House of Pain (1992)
The album everybody knows. Includes hit single "Jump Around" and underrated song "Put On Your Shit Kickers," which was played on a loop at my house in 1993, much to the dismay of my sweet parents. The lyrics of "Put On Your Shit Kickers" include a laundry-list of Irish-American iconography (corned beef & cabbage, claddagh rings, Celtic crosses). I quoted this song in a paper for my college Irish history class. The professor loved it. House of Pain is an important voice in academia!
Same As It Ever Was (1994)
This was "popular" (that is, my friend Katie and I listened to it) during the summer after my freshman year in high school. "On Point" and "Word is Bond" are strong tracks from this one. And everybody loves an album cover that is an action-shot of a dude getting punched in the face! (Just me?)
Truth Crushed to Earth Shall Rise Again (1996)
Now THIS album was a travesty. Not even the family friendly cover image could make up for the overall spookiness of the music. The HOP boys used creepy sound-effects all over this album in an effort to sound tough that backfired and seemed oddly like a 1930s radio show. I'm fairly sure that I was the ONLY person who (1) bought this album, and (2) had a poster of this album's cover in my bedroom as a teen. It's a sad state of affairs when you are actively TRYING to enjoy awful music because you believe in the band. It was during this era that my high school friend Connor (C Note!) bought me a House of Pain bumper sticker for by beloved Nissan Altima. It was the "Shamrocks & Shenanigans" crest from House of Pain's glory days. I put it on the back bumper of my car with pride, just down from the "Beastie Boys" bumper sticker. Sadly, the House of Pain bumper sticker was killed in a tragic rear-ending accident in Cochituate. Bizarrely enough, that three inch square was somehow the ONLY spot on my entire back bumper that was dinged up in that accident. You were gone too soon, sweet Shamrocks & Shenanigans sticker. Gone too soon.
Tickets for the House of Pain show on Friday are $42 apiece. Yikes. I think I'll save some money and instead, just replay these three albums in my apartment while wearing a Celtics jersey. Irish #1!
Posted by Selena Coppock at 10:26 AM No comments:
Hamilton Alumni Show Recap
This past weekend I went back to The Hill with Justin Tyler '01 (and his group Sidecar), Katey Healy-Wurzburg '05, Chris Sessa '06, and Liza Rothschild '08 for an alumni comedy show. Good times were had by all and the show was fantastic. The Campus Activities Board (CAB) and the office of Student Activities generously sponsored and produced the show. Highlights of the weekend included:
-Dinner at Commons! Heyo! $8.25 for all-you-can-eat whatever you want! We even walked the runway in Commons, which gave me flashbacks.
-Giving Jack (the owner of the beloved Village Tavern) a hug and catching up.
-Playing "Night Moves" on the juke box at the Village Tavern. It used to be song #8413 on the old juke box and it was Ginny Berg's and my anthem.
-Late night eats at McDonalds. You can never go wrong with a 20 chicken mcnuggets, my friends.
-Fantastic show in the barn that was really well-attended.
It was a great weekend, save for one weird exchange went down and disappointed me.
After the comedy show, my sorority was throwing a house party downtown and invited me. I was like, "I'm a little too old for a sorority house party, but I'll pop in to say hello and be polite." I had been told that the party was in honor of alums who were back on campus-- there were a few. So I go there, said some hellos, whatever. Then a RANDOM guy comes up to me (he looked young and lame-- probably a sophomore or junior) and says, "I was sent here on behalf of my friends to ask you a question, but I think it might be kinda rude..." and I was like, "Huh?"
He then, despite the fact that he thinks it's rude and has said as much, asks me, "Do you have kids?" I was just so stunned that I said, "What?" and "Excuse me?" about three times. In case you don't know me, I do not have kids. I'm 30 and plenty of my friends have kids, but I don't and I think it's a wholly weird and inappropriate question to be asked by a stranger. Especially with the tone he was using--his tone communicated, "We're making fun of you with this question."
Once I recovered from how blindsided I was, I simply flipped him the bird and told him to get lost. He walked away, back to his equally lame friends. I only knew about 2 people at the party and felt really uncomfortable at that point. So a few minutes later I went to leave because I would prefer to be at the VT (my home away from home in college), where a few other alums were hanging out. As was walking out of the house party, I walked by that twerp and his LOSER friends and they sarcastically said, "Goodnight, MA'AM." I responded with some choice words to defend myself, and they go, "Enjoy menopause."
Enjoy menopause! I'm frigging 30 years old! I haven't encountered such bizarre sexism & ageism in my LIFE. I was FLOORED by the exchange. I had been just standing at a party with other alum comedians, not bothering ANYONE, when this RANDOM STRANGER came over and, apropos of nothing, asked me an inappropriate question, then harshly insulted me as I walked out.
Later he tried to get into the bar (the VT) and I was with a crew of other alums standing by the door. He walked into the bar and I go, "That's the guy!" and the dudes stared at him and he just walked out. It was nice to have those guys as back-up and have that loser not feel comfortable at the bar, but the whole thing was just upsetting. When I was at Hamilton, there was a small contingent of white, wealthy, entitled males who would engage in that type of behavior, but were widely reviled for it. Just sucks when you bump into it as an alumna who loves her alma mater.
In short, that kid's a twerp and I hope that someday his idiocy lands him in the middle of a DU or Psi U beat-down. I'm sure the real world will chew him up and spit him out in due time. Nonetheless, my feelings about Hamilton are best said by the school song Carissima: I love thee evermore.

redpajama_set_name: RedPajamaCommonCrawl


text:
Baby, We Got It! Watch the Trailer for Aretha Franklin Movie Respect
What you want? How about Oscar-winning Dreamgirls star Jennifer Hudson, who made a powerhouse Broadway debut in The Color Purple, back on the big screen as Aretha Franklin in the upcoming biopic Respect? The dazzling trailer for the film, which is scheduled for release in December, has arrived, and it's fabulous! Directed by Liesl Tommy, Respect also stars Broadway's Audra McDonald, Heather Headley, Hailey Kilgore, Tituss Burgess and Saycon Sengbloh. Take a look below!


text:
Find Office Space
Get Details and Prices
I'm interested in offices in Clerkenwell
Company Name Title Mr Mrs Ms Miss First Name Last Name Tel/Mobile Email Number of people
Office Space in Clerkenwell020 3970 9731
Home > Clerkenwell Office Space
Clerkenwell Office Space
Results 1 - 7 for Office Space in Clerkenwell
Phoenix Yard WC1X 9LW
Phoenix Yard Office Space - WC1X 9LW
A house in the country 300 years ago, and then a brewery in the eighteenth-century, this centre is a two- and three-storey building with ground and first floor currently occupied by two respected architects' practices. The original timber roof trusses and internal timber structure are exposed, and space is open-plan. Working areas are separated by 3/4 height screens which can be removed to provide flexible space for one to five or more persons. Each floor has a kitchen. Toilets and shower are at ground level. There is no lift. The second (top) floor was refurbished in 2004 with additional insulation, new roof lights, lighting, heating and finishes. There are several open-plan meeting areas, and an enclosed glazed meeting room. On the first floor there are workstations in a totally enclosed room priced at £350 per month including broadband (plus VAT), or £300 in a semi-enclosed room. There is a 10% discount when all the workstations in a room are taken.
Serviced from £300 per person per monthCoworking - Call for latest price
Clerkenwell Workshops EC1R 0AT
Clerkenwell Workshops Office Space - EC1R 0AT
This business centre situated in the heart of Farringdon boasts a range of bright and modern office and studio space surrounding a central courtyard. The modern entrance and friendly on-site management team will give an impressive welcome to any visitor. Other amenities here include; 24-hour access, great transport links and an excellent on-site café, serving both hot and cold food. Cycling to work is a great option, and here with the on-site bike racks you will have peace of mind knowing your bike is safe and secure. There is also access to kitchen facilities, as well as various other amenities to help with productivity.
Serviced from £308 per person per monthLeased from £6 per sq ft
300 St John Street EC1V 4PA
300 St John Street Office Space - EC1V 4PA
Stunning office space across four floors of this building is available now for you to customise, allowing you to create a space that looks and feels the way you want. The bespoke design service is perfect for established and growing companies who want to tailor their work environment so that it aligns with their brand. The rental price includes the cost of the design, build and servicing of the office space so that you can focus on your business. Super-fast WiFi is included as well as utilities, coffee and cleaning services. These full floor offices are available on flexible terms and can be upgraded to include premium enhancements and custom IT infrastructure.
Serviced Offices - Call for latest price
9 Dallington Street EC1V 0BH
9 Dallington Street Office Space - EC1V 0BH
In addition to providing hot desking services offering greater savings and resource efficiency, lounge areas provided as an informal area where people can socialise and shared office space facilities, this Clerkenwell office building also offers its business tenants an ideal location on Dallington Street. An excellent selection of building facilities are offered such as perfectly controlled office temperature thanks to quality A/C systems, office suites that are furnished to a high specification and access to the building available at any time, 24/7.
Serviced from £675 per person per month
Davina House EC1V 7ET
Davina House Office Space - EC1V 7ET
Pleasantly situated opposite a public park, this well-appointed centre provides offices decorated to a superior standard with modern furnishings, carpeting and central heating. Amenities included; Wi-Fi, secure entry, intruder alarms and 24 hour access. The space is also well located for public transport.
35 Great Sutton Street EC1V 0DX
35 Great Sutton Street Office Space - EC1V 0DX
The converted Victorian warehouse at 35 Great Sutton Street retains many of its original brick and iron features. The plug and play workspace includes essential services and facilities that your business depends on to succeed, from the latest IT and communications infrastructure to helpful business advice and support services. High-speed wireless internet, a kitchen area, meeting rooms, and 24-hour building access are also available.
Coworking from £350 per person per month
Knights Court EC1M 4NH
Knights Court Office Space - EC1M 4NH
Based in London's thriving design district, Clerkenwell, this is a light and airy warehouse workspace overlooking the historic Smithfield market. With an impressive entrance and large floor to ceiling windows, the space has all members need to be clients most productive self, with breakout spaces, standing desks and private phone booths for private conversations, and 4 meeting rooms (2 per floor). The warehouse workspace is divided between two floors both housing up to 30 people per floor (with members own meeting rooms, bathrooms, and kitchen). In addition, the workspace allows clients to have 24 hours access in 7 days of the week with high speed internet. There are lounges and breakout areas where you can take a break during a hectic workday.
Other Local Areas
Angel Office Space
Bloomsbury Office Space
Farringdon Office Space
Islington Office Space
Liverpool Street Office Space
Moorgate Office Space
Home | About Prime Office Space | FAQ | Latest News | Central London | Greater London | The South | The North
HomeAboutPrivacyContact Us
Copyright @ 2003 - 2021 Prime Office Space.
© 2003 - 2021 Copyright Prime Office Space. All rights reserved.
Contact Us - Privacy Policy - Disclaimer


text:
Resident Evil 8 Will Have Ray Tracing And 4K Visuals On PS5
Resident Evil 8's product page has been updated on PlayStation's website giving us a bunch of new PS5 specific details about the game.
We now know that the game will have Ray Tracing and support 4K visuals (this should be the same for the Xbox Series X version). What isn't clear is the frame rate, but you'd hope that the game would still offer a 60FPS version given that the past few Resident Evil games have had this option.
RELATED: Ikea Has Mocked Up PS5/Xbox Series X Consoles To Test The Chonkyness In Stores
When it comes to the DualSense controller, Resident Evil 8 will use Haptic feedback to simulate the feeling of firing a real gun. It will also utilise the Adaptive triggers to further simulate the pulling of a trigger.
Resident Evil 8 (or Resident Evil Village as it's known) will release on PS5/Xbox Series X in 2021. It's expected that we'll see it early in the year.
Ubisoft Is Creating An Open World Star Wars Game


Mazda3 is part of a long line of groundbreaking Mazda vehicles that have helped make it the best-selling Mazda in the world. The 2019 Mazda3 sets a new milestone as the first production model to lead Mazda into a bold new era. Blending beautiful design and exhilarating driving dynamics, Mazda3 was developed to inspire and create an emotional bond with its customers in two very distinct ways. A completely new design approach was taken when styling the sedan and hatchback, each embodying strikingly different personalities.
Full press kit, fact sheet and specifications available at a later date. B-roll and images available here.
Mazda's engineers could have left well enough alone for their award-winning family vehicle but instead continue to make meaningful improvements to benefit drivers and passengers in all three rows. The 2019 Mazda CX-9 features a host of improvements led by the availability of Apple CarPlay™ and Android Auto™, ventilated front seats, 360° View Monitor and a refined, retuned suspension.
Full press kit, fact sheet, specifications, b-roll and images available here.
For 2019, CX-5 it takes its next key step forward with a high-quality interior befitting a new top-tier Signature trim level, the refinement of the powertrain lineup with the addition of the turbocharged SKYACTIV-2.5T engine and an enhanced focus on the chassis featuring the latest technologies with G-Vectoring Control Plus.
No adventure is too big or too small for Mazda CX-3, Mazda's award-winning subcompact crossover SUV. Mazda CX-3 has exceeded expectations by providing class-above and segment-above features in a package that makes it ideal for cityscapes. Collecting praise since before it was recognized as a World Car Design of the Year finalist, the 2019 CX-3 continues to impress with exquisite design features such as a subtly enhanced exterior design and redesigned interior with new center console and armrests.
There's something freeing about getting behind the wheel of a lightweight roadster and venturing to the open road, with the ability to focus more on the journey than the destination. It is for those drivers that Mazda has spent nearly 30 years perfecting its flagship roadster, the MX-5 Miata. The MX-5 has brought joy to millions of drivers across the world, and now it has been perfected with SKYACTIV-G 2.0-liter engine with a power increase of 26 horsepower and 3 lb-ft and an increased redline from 6,800 rpm to 7,500 rpm compared to last year's model.
Cosmo. Luce. Millenia. CX-9 Signature. Mazda6.
These are but a small sample of the Mazda vehicles from the past 50 years that have embodied "Mazda Premium," a set of guiding principles that complements the automaker's human-centric design and engineering. Mazda uses these principles to build cars and crossover SUVs that compete in a class above, at a price that is readily affordable, offering a depth of engagement with its owner that satisfies at every touch point. With vehicles like these, it is Mazda's goal to enrich people's lives through a car ownership experience that celebrates driving, and to become a brand with which customers feel a strong emotional connection.
The re-engineered Mazda6 certainly delivers all of the above, elevating Mazda6 from its traditional competitive set into a higher class, with unparalleled craftsmanship, design and technologies for the driver who savors every moment behind the wheel. Yet, Mazda6 is also serene, thoroughly reworked underneath its sheet metal to deliver a refined experience befitting of a far more expensive car.
Full press kit, fact sheet, specifications, images and b-roll available here.


Perfect for your house or trailer home, our sturdy vinyl-coated, electro-galvanized steel carport protects your boat, car or any other vehicle.
Perfect for your house or trailer home, our sturdy vinyl-coated, electro-galvanized steel carport protects your boat, car or any other vehicle. It is easy to assemble since all parts pre-cut and pre-drilled. Place this freestanding structure wherever you need it most.
Multi-purpose port - perfect for vehicles, tractors, 4-wheelers, shelter from the elements, picnic table area, patio furniture, general gathering area, and more.
The all-steel Carport from Arrow is a convenient, all-weather shade and shelter solution that's versatile and practical. Use the Carport to shade your vehicle, truck, ATV, outdoor equipment, rest areas or picnic areas. Great for storing boats, picnic and outdoor furniture and summer toys in the off-season.
Meet the 10 x 15 ft. Carport from Arrow Sheds: the perfect, more compact all-steel carport fit for smaller vehicles, sedans, outdoor equipment and more.
The 12 x 20 ft. Carport from Arrow is a newly re-designed Carport and multi-use shelter that is wind and snow rated for maximum protection against the elements!


text:
Q: Advanced Network Image This happened after upgrading flutter
Compiler message:
../../../../../Developer/flutter/.pub-cache/hosted/pub.dartlang.org/flutter_advanced_networkimage-0.5.0/lib/src/provide
r/flutter_advanced_networkimage.dart:143:24: Error: The method 'AdvancedNetworkImage.load' has fewer positional
arguments than those of overridden method 'ImageProvider.load'.

  ImageStreamCompleter load(AdvancedNetworkImage key) {
                       ^
../../../../../Developer/flutter/packages/flutter/lib/src/painting/image_provider.dart:403:24: Context: This is the
overridden method ('load').
  ImageStreamCompleter load(T key, DecoderCallback decode);
                       ^
Target kernel_snapshot failed: Exception: Errors during snapshot creation: null
Failed to build bundle.

Error launching application on iPhone 11 Pro Max. Below is my code
import 'dart:async';
import 'dart:io';
import 'dart:typed_data';
import 'dart:ui' as ui show Codec;
import 'dart:ui' show Size, Locale, TextDirection, hashValues;

import 'package:flutter/foundation.dart';
import 'package:flutter/services.dart';

import '_network_image_io.dart'
  if (dart.library.html) '_network_image_web.dart' as network_image;
import 'binding.dart';
import 'image_cache.dart';
import 'image_stream.dart';

@immutable
class ImageConfiguration {

  const ImageConfiguration({
    this.bundle,
    this.devicePixelRatio,
    this.locale,
    this.textDirection,
    this.size,
    this.platform,
  });

  ImageConfiguration copyWith({
    AssetBundle bundle,
    double devicePixelRatio,
    Locale locale,
    TextDirection textDirection,
    Size size,
    String platform,
  }) {
    return ImageConfiguration(
      bundle: bundle ?? this.bundle,
      devicePixelRatio: devicePixelRatio ?? this.devicePixelRatio,
      locale: locale ?? this.locale,
      textDirection: textDirection ?? this.textDirection,
      size: size ?? this.size,
      platform: platform ?? this.platform,
    );
  }

  /// The preferred [AssetBundle] to use if the [ImageProvider] needs one and
  /// does not have one already selected.
  final AssetBundle bundle;

  /// The device pixel ratio where the image will be shown.
  final double devicePixelRatio;

  /// The language and region for which to select the image.
  final Locale locale;

  /// The reading direction of the language for which to select the image.
  final TextDirection textDirection;

  /// The size at which the image will be rendered.
  final Size size;

  final TargetPlatform platform;

  static const ImageConfiguration empty = ImageConfiguration();

  @override
  bool operator ==(dynamic other) {
    if (other.runtimeType != runtimeType)
      return false;
    final ImageConfiguration typedOther = other;
    return typedOther.bundle == bundle
        && typedOther.devicePixelRatio == devicePixelRatio
        && typedOther.locale == locale
        && typedOther.textDirection == textDirection
        && typedOther.size == size
        && typedOther.platform == platform;
  }

  @override
  int get hashCode => hashValues(bundle, devicePixelRatio, locale, size, platform);

  @override
  String toString() {
    final StringBuffer result = StringBuffer();
    result.write('ImageConfiguration(');
    bool hasArguments = false;
    if (bundle != null) {
      if (hasArguments)
        result.write(', ');
      result.write('bundle: $bundle');
      hasArguments = true;
    }
    if (devicePixelRatio != null) {
      if (hasArguments)
        result.write(', ');
      result.write('devicePixelRatio: ${devicePixelRatio.toStringAsFixed(1)}');
      hasArguments = true;
    }
    if (locale != null) {
      if (hasArguments)
        result.write(', ');
      result.write('locale: $locale');
      hasArguments = true;
    }
    if (textDirection != null) {
      if (hasArguments)
        result.write(', ');
      result.write('textDirection: $textDirection');
      hasArguments = true;
    }
    if (size != null) {
      if (hasArguments)
        result.write(', ');
      result.write('size: $size');
      hasArguments = true;
    }
    if (platform != null) {
      if (hasArguments)
        result.write(', ');
      result.write('platform: ${describeEnum(platform)}');
      hasArguments = true;
    }
    result.write(')');
    return result.toString();
  }
}

typedef DecoderCallback = Future<ui.Codec> Function(Uint8List bytes, {int cacheWidth, int cacheHeight});

@optionalTypeArgs
abstract class ImageProvider<T> {
  /// Abstract const constructor. This constructor enables subclasses to provide
  /// const constructors so that they can be used in const expressions.
  const ImageProvider();

  ImageStream resolve(ImageConfiguration configuration) {
    assert(configuration != null);
    final ImageStream stream = ImageStream();
    T obtainedKey;
    bool didError = false;
    Future<void> handleError(dynamic exception, StackTrace stack) async {
      if (didError) {
        return;
      }
      didError = true;
      await null; // wait an event turn in case a listener has been added to the image stream.
      final _ErrorImageCompleter imageCompleter = _ErrorImageCompleter();
      stream.setCompleter(imageCompleter);
      imageCompleter.setError(
        exception: exception,
        stack: stack,
        context: ErrorDescription('while resolving an image'),
        silent: true, // could be a network error or whatnot
        informationCollector: () sync* {
          yield DiagnosticsProperty<ImageProvider>('Image provider', this);
          yield DiagnosticsProperty<ImageConfiguration>('Image configuration', configuration);
          yield DiagnosticsProperty<T>('Image key', obtainedKey, defaultValue: null);
        },
      );
    }

    final Zone dangerZone = Zone.current.fork(
      specification: ZoneSpecification(
        handleUncaughtError: (Zone zone, ZoneDelegate delegate, Zone parent, Object error, StackTrace stackTrace) {
          handleError(error, stackTrace);
        }
      )
    );
    dangerZone.runGuarded(() {
      Future<T> key;
      try {
        key = obtainKey(configuration);
      } catch (error, stackTrace) {
        handleError(error, stackTrace);
        return;
      }
      key.then<void>((T key) {
        obtainedKey = key;
        final ImageStreamCompleter completer = PaintingBinding.instance.imageCache.putIfAbsent(
          key,
          () => load(key, PaintingBinding.instance.instantiateImageCodec),
          onError: handleError,
        );
        if (completer != null) {
          stream.setCompleter(completer);
        }
      }).catchError(handleError);
    });
    return stream;
  }

  Future<bool> evict({ ImageCache cache, ImageConfiguration configuration = ImageConfiguration.empty }) async {
    cache ??= imageCache;
    final T key = await obtainKey(configuration);
    return cache.evict(key);
  }

  Future<T> obtainKey(ImageConfiguration configuration);

  @protected
  ImageStreamCompleter load(T key, DecoderCallback decode);

  @override
  String toString() => '$runtimeType()';
}

@immutable
class AssetBundleImageKey {

  const AssetBundleImageKey({
    @required this.bundle,
    @required this.name,
    @required this.scale,
  }) : assert(bundle != null),
       assert(name != null),
       assert(scale != null);

  final AssetBundle bundle;

  /// The key to use to obtain the resource from the [bundle]. This is the
  /// argument passed to [AssetBundle.load].
  final String name;

  /// The scale to place in the [ImageInfo] object of the image.
  final double scale;

  @override
  bool operator ==(dynamic other) {
    if (other.runtimeType != runtimeType)
      return false;
    final AssetBundleImageKey typedOther = other;
    return bundle == typedOther.bundle
        && name == typedOther.name
        && scale == typedOther.scale;
  }

  @override
  int get hashCode => hashValues(bundle, name, scale);

  @override
  String toString() => '$runtimeType(bundle: $bundle, name: "$name", scale: $scale)';
}

/// A subclass of [ImageProvider] that knows about [AssetBundle]s.
///
/// This factors out the common logic of [AssetBundle]-based [ImageProvider]
/// classes, simplifying what subclasses must implement to just [obtainKey].
abstract class AssetBundleImageProvider extends ImageProvider<AssetBundleImageKey> {
  /// Abstract const constructor. This constructor enables subclasses to provide
  /// const constructors so that they can be used in const expressions.
  const AssetBundleImageProvider();

  /// Converts a key into an [ImageStreamCompleter], and begins fetching the
  /// image using [loadAsync].
  @override
  ImageStreamCompleter load(AssetBundleImageKey key, DecoderCallback decode) {
    return MultiFrameImageStreamCompleter(
      codec: _loadAsync(key, decode),
      scale: key.scale,
      informationCollector: () sync* {
        yield DiagnosticsProperty<ImageProvider>('Image provider', this);
        yield DiagnosticsProperty<AssetBundleImageKey>('Image key', key);
      },
    );
  }

  /// Fetches the image from the asset bundle, decodes it, and returns a
  /// corresponding [ImageInfo] object.
  ///
  /// This function is used by [load].
  @protected
  Future<ui.Codec> _loadAsync(AssetBundleImageKey key, DecoderCallback decode) async {
    final ByteData data = await key.bundle.load(key.name);
    if (data == null)
      throw 'Unable to read data';
    return await decode(data.buffer.asUint8List());
  }
}

class _SizeAwareCacheKey {
  const _SizeAwareCacheKey(this.providerCacheKey, this.width, this.height);

  final Object providerCacheKey;

  final int width;

  final int height;

  @override
  bool operator ==(Object other) {
    if (other.runtimeType != runtimeType)
      return false;
    final _SizeAwareCacheKey typedOther = other;
    return providerCacheKey == typedOther.providerCacheKey
        && width == typedOther.width
        && height == typedOther.height;
  }

  @override
  int get hashCode => hashValues(providerCacheKey, width, height);
}

/// Instructs Flutter to decode the image at the specified dimensions
/// instead of at its native size.
///
/// This allows finer control of the size of the image in [ImageCache] and is
/// generally used to reduce the memory footprint of [ImageCache].
///
/// The decoded image may still be displayed at sizes other than the
/// cached size provided here.
class ResizeImage extends ImageProvider<_SizeAwareCacheKey> {
  /// Creates an ImageProvider that decodes the image to the specified size.
  ///
  /// The cached image will be directly decoded and stored at the resolution
  /// defined by `width` and `height`. The image will lose detail and
  /// use less memory if resized to a size smaller than the native size.
  const ResizeImage(
    this.imageProvider, {
    this.width,
    this.height,
  }) : assert(width != null || height != null);

  /// The [ImageProvider] that this class wraps.
  final ImageProvider imageProvider;

  /// The width the image should decode to and cache.
  final int width;

  /// The height the image should decode to and cache.
  final int height;

  /// Composes the `provider` in a [ResizeImage] only when `cacheWidth` and
  /// `cacheHeight` are not both null.
  ///
  /// When `cacheWidth` and `cacheHeight` are both null, this will return the
  /// `provider` directly.
  static ImageProvider<dynamic> resizeIfNeeded(int cacheWidth, int cacheHeight, ImageProvider<dynamic> provider) {
    if (cacheWidth != null || cacheHeight != null) {
      return ResizeImage(provider, width: cacheWidth, height: cacheHeight);
    }
    return provider;
  }

  @override
  ImageStreamCompleter load(_SizeAwareCacheKey key, DecoderCallback decode) {
    final DecoderCallback decodeResize = (Uint8List bytes, {int cacheWidth, int cacheHeight}) {
      assert(
        cacheWidth == null && cacheHeight == null,
        'ResizeImage cannot be composed with another ImageProvider that applies cacheWidth or cacheHeight.'
      );
      return decode(bytes, cacheWidth: width, cacheHeight: height);
    };
    return imageProvider.load(key.providerCacheKey, decodeResize);
  }

  @override
  Future<_SizeAwareCacheKey> obtainKey(ImageConfiguration configuration) async {
    final Object providerCacheKey = await imageProvider.obtainKey(configuration);
    return _SizeAwareCacheKey(providerCacheKey, width, height);
  }
}

/// Fetches the given URL from the network, associating it with the given scale.
///
/// The image will be cached regardless of cache headers from the server.
///
/// When a network image is used on the Web platform, the [cacheWidth] and
/// [cacheHeight] parameters of the [DecoderCallback] are ignored as the Web
/// engine delegates image decoding of network images to the Web, which does
/// not support custom decode sizes.
///
/// See also:
///
///  * [Image.network] for a shorthand of an [Image] widget backed by [NetworkImage].
// TODO(ianh): Find some way to honor cache headers to the extent that when the
// last reference to an image is released, we proactively evict the image from
// our cache if the headers describe the image as having expired at that point.
abstract class NetworkImage extends ImageProvider<NetworkImage> {
  /// Creates an object that fetches the image at the given URL.
  ///
  /// The arguments [url] and [scale] must not be null.
  const factory NetworkImage(String url, { double scale, Map<String, String> headers }) = network_image.NetworkImage;

  /// The URL from which the image will be fetched.
  String get url;

  /// The scale to place in the [ImageInfo] object of the image.
  double get scale;

  /// The HTTP headers that will be used with [HttpClient.get] to fetch image from network.
  ///
  /// When running flutter on the web, headers are not used.
  Map<String, String> get headers;

  @override
  ImageStreamCompleter load(NetworkImage key, DecoderCallback decode);
}

/// Decodes the given [File] object as an image, associating it with the given
/// scale.
///
/// See also:
///
///  * [Image.file] for a shorthand of an [Image] widget backed by [FileImage].
class FileImage extends ImageProvider<FileImage> {
  /// Creates an object that decodes a [File] as an image.
  ///
  /// The arguments must not be null.
  const FileImage(this.file, { this.scale = 1.0 })
    : assert(file != null),
      assert(scale != null);

  /// The file to decode into an image.
  final File file;

  /// The scale to place in the [ImageInfo] object of the image.
  final double scale;

  @override
  Future<FileImage> obtainKey(ImageConfiguration configuration) {
    return SynchronousFuture<FileImage>(this);
  }

  @override
  ImageStreamCompleter load(FileImage key, DecoderCallback decode) {
    return MultiFrameImageStreamCompleter(
      codec: _loadAsync(key, decode),
      scale: key.scale,
      informationCollector: () sync* {
        yield ErrorDescription('Path: ${file?.path}');
      },
    );
  }

  Future<ui.Codec> _loadAsync(FileImage key, DecoderCallback decode) async {
    assert(key == this);

    final Uint8List bytes = await file.readAsBytes();
    if (bytes.lengthInBytes == 0)
      return null;

    return await decode(bytes);
  }

  @override
  bool operator ==(dynamic other) {
    if (other.runtimeType != runtimeType)
      return false;
    final FileImage typedOther = other;
    return file?.path == typedOther.file?.path
        && scale == typedOther.scale;
  }

  @override
  int get hashCode => hashValues(file?.path, scale);

  @override
  String toString() => '$runtimeType("${file?.path}", scale: $scale)';
}

/// Decodes the given [Uint8List] buffer as an image, associating it with the
/// given scale.
///
/// The provided [bytes] buffer should not be changed after it is provided
/// to a [MemoryImage]. To provide an [ImageStream] that represents an image
/// that changes over time, consider creating a new subclass of [ImageProvider]
/// whose [load] method returns a subclass of [ImageStreamCompleter] that can
/// handle providing multiple images.
///
/// See also:
///
///  * [Image.memory] for a shorthand of an [Image] widget backed by [MemoryImage].
class MemoryImage extends ImageProvider<MemoryImage> {
  /// Creates an object that decodes a [Uint8List] buffer as an image.
  ///
  /// The arguments must not be null.
  const MemoryImage(this.bytes, { this.scale = 1.0 })
    : assert(bytes != null),
      assert(scale != null);

  /// The bytes to decode into an image.
  final Uint8List bytes;

  /// The scale to place in the [ImageInfo] object of the image.
  final double scale;

  @override
  Future<MemoryImage> obtainKey(ImageConfiguration configuration) {
    return SynchronousFuture<MemoryImage>(this);
  }

  @override
  ImageStreamCompleter load(MemoryImage key, DecoderCallback decode) {
    return MultiFrameImageStreamCompleter(
      codec: _loadAsync(key, decode),
      scale: key.scale,
    );
  }

  Future<ui.Codec> _loadAsync(MemoryImage key, DecoderCallback decode) {
    assert(key == this);

    return decode(bytes);
  }

  @override
  bool operator ==(dynamic other) {
    if (other.runtimeType != runtimeType)
      return false;
    final MemoryImage typedOther = other;
    return bytes == typedOther.bytes
        && scale == typedOther.scale;
  }

  @override
  int get hashCode => hashValues(bytes.hashCode, scale);

  @override
  String toString() => '$runtimeType(${describeIdentity(bytes)}, scale: $scale)';
}

/// Fetches an image from an [AssetBundle], associating it with the given scale.
///
/// This implementation requires an explicit final [assetName] and [scale] on
/// construction, and ignores the device pixel ratio and size in the
/// configuration passed into [resolve]. For a resolution-aware variant that
/// uses the configuration to pick an appropriate image based on the device
/// pixel ratio and size, see [AssetImage].
///
/// ## Fetching assets
///
/// When fetching an image provided by the app itself, use the [assetName]
/// argument to name the asset to choose. For instance, consider a directory
/// `icons` with an image `heart.png`. First, the [pubspec.yaml] of the project
/// should specify its assets in the `flutter` section:
///
/// ```yaml
/// flutter:
///   assets:
///     - icons/heart.png
/// ```
///
/// Then, to fetch the image and associate it with scale `1.5`, use
///
/// ```dart
/// AssetImage('icons/heart.png', scale: 1.5)
/// ```
///
/// ## Assets in packages
///
/// To fetch an asset from a package, the [package] argument must be provided.
/// For instance, suppose the structure above is inside a package called
/// `my_icons`. Then to fetch the image, use:
///
/// ```dart
/// AssetImage('icons/heart.png', scale: 1.5, package: 'my_icons')
/// ```
///
/// Assets used by the package itself should also be fetched using the [package]
/// argument as above.
///
/// If the desired asset is specified in the `pubspec.yaml` of the package, it
/// is bundled automatically with the app. In particular, assets used by the
/// package itself must be specified in its `pubspec.yaml`.
///
/// A package can also choose to have assets in its 'lib/' folder that are not
/// specified in its `pubspec.yaml`. In this case for those images to be
/// bundled, the app has to specify which ones to include. For instance a
/// package named `fancy_backgrounds` could have:
///
/// ```
/// lib/backgrounds/background1.png
/// lib/backgrounds/background2.png
/// lib/backgrounds/background3.png
/// ```
///
/// To include, say the first image, the `pubspec.yaml` of the app should specify
/// it in the `assets` section:
///
/// ```yaml
///   assets:
///     - packages/fancy_backgrounds/backgrounds/background1.png
/// ```
///
/// The `lib/` is implied, so it should not be included in the asset path.
///
/// See also:
///
///  * [Image.asset] for a shorthand of an [Image] widget backed by
///    [ExactAssetImage] when using a scale.
class ExactAssetImage extends AssetBundleImageProvider {
  /// Creates an object that fetches the given image from an asset bundle.
  ///
  /// The [assetName] and [scale] arguments must not be null. The [scale] arguments
  /// defaults to 1.0. The [bundle] argument may be null, in which case the
  /// bundle provided in the [ImageConfiguration] passed to the [resolve] call
  /// will be used instead.
  ///
  /// The [package] argument must be non-null when fetching an asset that is
  /// included in a package. See the documentation for the [ExactAssetImage] class
  /// itself for details.
  const ExactAssetImage(
    this.assetName, {
    this.scale = 1.0,
    this.bundle,
    this.package,
  }) : assert(assetName != null),
       assert(scale != null);

  /// The name of the asset.
  final String assetName;

  /// The key to use to obtain the resource from the [bundle]. This is the
  /// argument passed to [AssetBundle.load].
  String get keyName => package == null ? assetName : 'packages/$package/$assetName';

  /// The scale to place in the [ImageInfo] object of the image.
  final double scale;

  /// The bundle from which the image will be obtained.
  ///
  /// If the provided [bundle] is null, the bundle provided in the
  /// [ImageConfiguration] passed to the [resolve] call will be used instead. If
  /// that is also null, the [rootBundle] is used.
  ///
  /// The image is obtained by calling [AssetBundle.load] on the given [bundle]
  /// using the key given by [keyName].
  final AssetBundle bundle;

  /// The name of the package from which the image is included. See the
  /// documentation for the [ExactAssetImage] class itself for details.
  final String package;

  @override
  Future<AssetBundleImageKey> obtainKey(ImageConfiguration configuration) {
    return SynchronousFuture<AssetBundleImageKey>(AssetBundleImageKey(
      bundle: bundle ?? configuration.bundle ?? rootBundle,
      name: keyName,
      scale: scale,
    ));
  }

  @override
  bool operator ==(dynamic other) {
    if (other.runtimeType != runtimeType)
      return false;
    final ExactAssetImage typedOther = other;
    return keyName == typedOther.keyName
        && scale == typedOther.scale
        && bundle == typedOther.bundle;
  }

  @override
  int get hashCode => hashValues(keyName, scale, bundle);

  @override
  String toString() => '$runtimeType(name: "$keyName", scale: $scale, bundle: $bundle)';
}

// A completer used when resolving an image fails sync.
class _ErrorImageCompleter extends ImageStreamCompleter {
  _ErrorImageCompleter();

  void setError({
    DiagnosticsNode context,
    dynamic exception,
    StackTrace stack,
    InformationCollector informationCollector,
    bool silent = false,
  }) {
    reportError(
      context: context,
      exception: exception,
      stack: stack,
      informationCollector: informationCollector,
      silent: silent,
    );
  }
}

/// The exception thrown when the HTTP request to load a network image fails.
class NetworkImageLoadException implements Exception {
  /// Creates a [NetworkImageLoadException] with the specified http status
  /// [code] and the [uri]
  NetworkImageLoadException({@required this.statusCode, @required this.uri})
      : assert(uri != null),
        assert(statusCode != null),
        _message = 'HTTP request failed, statusCode: $statusCode, $uri';

  /// The HTTP status code from the server.
  final int statusCode;

  /// A human-readable error message.
  final String _message;

  /// Resolved URL of the requested image.
  final Uri uri;

  @override
  String toString() => _message;
}

A: Not sure if you found a solution to this or have moved on, but leaving a comment here incase someone comes across this question as I have, since I've recently run into this issue too. It looks like this issue was fixed in 0.6.0-alpha.1 (https://github.com/mchome/flutter_advanced_networkimage/issues/127)

redpajama_set_name: RedPajamaStackExchange


text:
Singapore teenage blogger charged with hurting the religious feelings of Muslims and Christians
CB Condez 27 May, 2016
Amos Yee, a 17-year-old Singaporean blogger who caught media attention last year for his radical social media posts, has been slapped with eight new charges.
According to Free Malaysia Today, Yee faces five charges for allegedly hurting the religious feelings of Muslims and one charge for allegedly wounding the religious feelings of Christians. If found guilty, he could be sentenced to up to three years imprisonment and fines. The other two charges are for failing to appear twice at the Jurong Poice Division after having been ordered by the police and the court to do so, an offense that could result to up to one month of jailtime plus a fine of up to $1,500.
(REUTERS/EDGAR SU)Amos Yee waves as he leaves the State Courts after his trial in Singapore May 12, 2015.
The authorities came to notice Yee in March last year when he uploaded a video that criticized Lee Kuan Yew, former prime minister of Singapore, shortly after his death. He reportedly compared the leader to Jesus but described both negatively. He later posted an obsene image depicting Lee and former British prime minister Margaret Thatcher. He was arrested and the court found him guilty of obsenity and intention to hurt Christians' religious feelings. He was released on bail but continued to breach bail conditions.
He was asked by the police to report for investigations at the Jurong Police Division in December, but he didn't show up. He then left Singapore and stayed in another country for several months. Upon his return in April, he was a served an order by the magistrate to report at the police station, but he again failed to show up.
Yee was taken into custody on May 11 but was released on a S$5,000 bail. He was in court on May 26 without legal counsel and, according to The Straits Times, told District Judge Ronald Gwee that has intentions to claim trial for all the charges. There will be a pre-trial conference on May 30.
Oh my gosh. No lawyer is available to represent me now because they are worn out by the Kho Jabing case (Or don't like me who knows XD)
— Amos Yee (@amosyee) May 26, 2016
According to the report, the latest offenses that Yee allegedly committed from November 2015 and May this year are: uploading a video on Facebook around Nov. 28, 2015 that had anti-Islam remarks; failure to report to the Jurong Police Division on Dec. 14, 2015 despite police notice; uploading a video on his blog around Dec. 17, 2015 that, likewise, had remarks that were against Islam; uploading a video on YouTube around April 14 that contained anti-Christian remarks and gestures; uploading a photo on Facebook around April 17 that shows himself holding a copy of the Quran while sticking his middle finger out; uploading a video on YouTube on May 8 that had gestures and remarks against Islam; failure to report to the Jurong Police Division on May 10 despite a Magistrate's order; and uploading a video on YouTube and Vimeo on May 19 that shows gestures and remarks against Islam.


NRMA, National Roads and Motorists' Association, has been insuring motor vehicles since 1925. The company is now a brand of IGA, Insurance Australia Group, and offers a wide variety of insurance policies to individuals and businesses throughout the country.
NRMA's Life Insurance division has been sold to MBF Australia Ltd. The Public Liability for Not-For-Profits is a joint venture with Allianz Australia and QBE.
NRMA operates CareFlight, a non-profit rescue/emergency and intensive care transport helicopter service in western Sydney and New South Wales. The company also works with the Royal Flying Doctor Service to assist communities throughout Queensland.


text:
Brian Behlendorf Testifies on Open Source Software Security to the US House Committee on Science and Technology
Contributor on May 12, 2022
This post originally appeared on OpenSSF's blog.
On Wednesday, May 11, 2022, Brian Behlendorf, OpenSSF General Manager, testified to the United States House of Representatives Committee on Science, Space, and Technology. Brian's testimony shares the work being done within the Open Source Security Foundation and broader open source software community to improve security and trustworthiness of open source software.
A copy of Brian's written remarks are below and linked here (PDF). Visit the Committee's website to view a recording of the hearing.
Also testifying at the hearing were:
Ms. Lauren Knausenberger, Chief Information Officer, Department of the Air Force
Ms. Amélie Erin Koran, Non-Resident Senior Fellow, The Atlantic Council
Dr. Andrew Lohn, Senior Fellow, Center for Security and Emerging Technology, Georgetown University
The Honorable Eddie Bernice Johnson, Chairwoman
The Honorable Frank Lucas, Ranking Member
Committee on Science, Space, and Technology
2321 Rayburn House Office Building
Dear Chairwoman Johnson, Congressman Lucas, and distinguished members of the Committee on Science, Space and Technology,
Thank you for your invitation to address you today, and the opportunity to share with you the work being done within the Open Source Security Foundation and the broader open source software community to raise the level of security and trustworthiness of open source software.
What are the consequences of insecure open-source software and what is industry as a whole, and the Open Source Security Foundation in particular, doing to tackle such Vulnerabilities?
Open source software ("OSS") has become an integral part of the technology landscape, as inseparable from the digital machinery of modern society as bridges and highways are from the physical equivalent. According to one report, typically 70% to 90% of a modern application "stack" consists of pre-existing OSS, from the operating system to the cloud container to the cryptography and networking functions, sometimes up to the very application running your enterprise or website. Thanks to copyright licenses that encourage no-charge re-use, remixing, and redistribution, OSS encourages even the most dogged of competitors to work together to address common challenges, saving money by avoiding duplication of effort, moving faster to innovate upon new ideas and adopt emerging standards.
However, this ubiquity and flexibility can come at a price. While OSS generally has an excellent reputation for security, the developer communities behind those works can vary significantly in their application of development practices and techniques that can reduce the risk of a defect in the code, or in responding quickly and safely when one is discovered by others. Often, developers trying to decide what OSS to use have difficulty determining which ones are more likely to be secure than others based on objective criteria. Enterprises often don't have a well-managed inventory of the software assets they use, with enough granular detail, to know when or if they're vulnerable to known defects, and when or how to upgrade. Even those enterprises who may be willing to invest in increasing the security of the OSS they use often don't know where to make those investments, nor their urgency relative to other priorities.
There are commercial solutions to some of these problems. There are vendors like Gitlab or Red Hat who sell support services for specific open source software, or even entire aggregate distributions of OSS. There are other vendors, like Snyk and Sonatype, who sell tools to help enterprises track their use of OSS and flash an alert when there is a new critical vulnerability in software running deep inside an enterprise's IT infrastructure.
However, fighting security issues at their upstream source – trying to catch them earlier in the development process, or even reduce the chances of their occurrence at all – remains a critical need. We are also seeing new kinds of attacks that focus less on vulnerabilities in code, and more on the supply chain itself – from rogue software that uses "typosquatting" on package names to insert itself unexpectedly into a developer's dependency tree, to attacks on software build and distribution services, to developers turning their one-person projects into "protest-ware" with likely unintended consequences.
To address the urgent need for better security practices, tools, and techniques in the open source software ecosystem, a collection of organizations with deep investments into the OSS ecosystem came together in 2020 to form the Open Source Security Foundation, and chose to house that effort at the Linux Foundation. This public effort has grown to hundreds of active participants across dozens of different public initiatives housed under 7 working groups, with funding and partnership from over 75 different organizations, and reaching millions of OSS developers.
The OpenSSF's seven working groups are:
Best Practices for Open Source Developers: This group works to provide open source developers with best practices recommendations, and easy ways to learn and apply them. Among other things, this group has developed courseware for teaching developers the fundamentals of secure software development, and implement the OpenSSF Best Practices Badge program.
Securing Critical Projects: This group exists to identify and help to allocate resources to secure the critical open source projects we all depend on. Among other things, this has led to a collaboration with Harvard Business School to develop a list of the most critical projects.
Supply Chain Integrity: This group is helping people understand and make decisions on the provenance of the code they maintain, produce and use. Among other things, this group has developed a specification and software called "SLSA", for describing and tracking levels of confidence in a software supply chain.
Securing Software Repositories: This group provides a collaborative environment for aligning on the introduction of new tools and technologies to strengthen and secure software repositories, which are key points of leverage for security practices and the promotion to developers of more trustworthy software.
Identifying Security Threats in Open Source Projects: This group enables informed confidence in the security of OSS by collecting, curating, and communicating relevant metrics and metadata. For example, it is developing a database of all known security reviews of OSS.
Security Tooling: This group's mission is to provide the best security tools for open source developers and make them universally accessible. Among other activities, this group has released code to better enable a security testing technique called "fuzzing" among open source projects.
Vulnerability Disclosures: This group is improving the overall security of the OSS ecosystem by helping advance vulnerability reporting and communication. For example, this group has produced a Guide to Coordinated Vulnerability Disclosure for OSS.
There are also a series of special projects under the OpenSSF worthy of special mention:
Project sigstore: an easy-to-use toolkit and service for signing software artifacts, ensuring that the software you are holding is the same as what the developer intended, addressing a wide array of supply chain attacks.
The Alpha-Omega Project: an effort to systematically search for new vulnerabilities in open source code, and work with critical open source projects to improve their vulnerability handling and other security practices.
The GNU Toolchain Initiative: this effort supports the build ecosystems for perhaps the most critical set of developer libraries and compilers in the world, the GNU Toolchain, as a means to ensure its safety and integrity.
All the above efforts are public-facing and developed using the best practices of open source software communities. Funding from our corporate partners goes towards supporting the core staff and functions that enable this community, but all the substance comes from voluntary efforts. In some cases funds flow to assist with specific efforts – for example, recently the Alpha-Omega project decided to allocate funding towards the NodeJS community to augment its security team with a part-time paid employee and to fund fixes for security issues.
The Linux Foundation has also begun to adapt its "LFX" platform, a set of services designed to support the open source communities hosted by the Foundation, to incorporate security-related data such as vulnerability scans from Snyk and BluBracket, along with information from the OpenSSF Best Practices Badge program and the OpenSSF Security Scorecards initiative, to provide a unified view of the security risks in a particular collection of open source code, and what maintainers and contributors to those projects can do to improve those scores and reduce those risks. We expect to see more kinds of risk-related data coming into a unified view like this, helping developers and enterprises make better decisions about what open source components and frameworks to use, and how to reduce risk for those components they depend upon.
Guiding all of this is a deep conviction among the OpenSSF community that while there are many different ways in which security issues manifest themselves in the OSS ecosystem, every one of them is addressable, and that there are lots of opportunities for investment and collective action that will pay a return many times over in the form of lower risk of a future major vulnerability in a widely-used package, and lesser disruption if one is discovered.
Other efforts at the Linux Foundation include "Prossimo", an effort focused on moving core Internet-related services to "memory-safe" languages like Rust, Go, or Java, which would eliminate an entire category of vulnerabilities that other languages allow too easily. Another is the SPDX standard for Software Bill of Materials ("SBOMs"), addressing the needs identified by White House Executive Order 14028 in a vendor-neutral and open way.
This is by no means a comprehensive list of all such efforts in the OSS ecosystem to improve security. Every OSS foundation either has a security team in operation today or is scrambling to identify volunteers and funding to establish one. There is a greater emphasis today than I've seen in my 30 years of using and contributing to OSS (since before it was called OSS) on the importance of such efforts. Clear metrics for progress are elusive since we lack clear metrics for evaluating software risk; in fact developing ways to measure and represent that risk is a key priority for OpenSSF. We will never see a time when open source software is free from security defects, but we are getting better at determining the tools and techniques required to more comprehensively address the risk of vulnerabilities in open source code. Scaling up those tools and techniques to address the tens of thousands of widely used OSS components and to get them more quickly updated remains a challenge.
How can the Federal government improve collaboration with industry to help secure open-source software?
I'll focus here on principles and methods for collaboration that will lead to more secure OSS, and then for question 3 on specific opportunities to collaborate on.
First, focus on resourcing long-term personal engagements with open source projects.
Over the last few years, we have seen a healthy degree of engagement by the Federal government with OSS projects and stakeholders on the topic of improving security. The push established by Executive Order 14028 for the adoption of SBOMs aligned nicely with the standardization and growing adoption of the SPDX standard by a number of OSS projects, but it was aided substantially by the involvement of personnel from NIST, CISA, and other agencies engaging directly with SPDX community members.
Often the real secret to a successful OSS effort is in the communities of different stakeholders that come together to create it – the software or specification is often just a useful byproduct. The Federal government, both through its massive use of open source code and the role that it traditionally performs in delivering and protecting critical infrastructure, should consider itself a stakeholder, and like other stakeholders prioritize engagement with upstream open source projects of all sizes. That engagement need not be so formal; most contributors to open source projects have no formal agreement covering that work aside from a grant of intellectual property in those contributions. But as they say, "history is made by those who show up." If the IT staff of a Federal agency (or of a contractor under a Federal contract) were authorized and directed to contribute to the security team of a critical open source project, or to addressing known or potential security issues in important code, or to participating in an OpenSSF working group or project, that would almost certainly lead to identifying and prioritizing work that would result in enhanced security in the Federal government's own use of open source code, and likely to upstream improvements that make OSS more secure for everyone else.
Second, engage in OSS development and security work as a form of global capacity building, and in doing so, in global stability and resilience. OSS development is inherently international and has been since its earliest days. Our adversaries and global competitors use the same OSS that we do, by and large. When our operating systems, cloud containers, networking stacks and applications are made to be more secure, there are fewer chances for rogue actors to cause disruption, and that can make it harder to de-escalate tensions or protect the safety of innocent parties. Government agencies in France, Taiwan, and more have begun to establish funded offices focused on the adoption, development, and promotion of OSS, in many ways echoing the Open Source Program Offices being set up by companies like Home Depot and Walmart or intergovernmental agencies like the WHO. The State Department in recent years has funded the development of software like Tor to support the security needs of human rights workers and global activists. The Federal government could use its convening authority and statecraft to bring like-minded activities and investment together in a coordinated way more effectively than any of us in the private sector can.
Third, many of the ideas for improving the security of OSS involve establishing services – services for issuing keys to developers like Project sigstore does, or services for addressing the naming of software packages for SBOMs, or services for collecting security reviews, or providing a comprehensive view of the risk of open source packages. Wherever possible, the Federal government should avoid establishing such services themselves when suitable instances of such services are being built by the OSS community. Instead of owning or operating such services directly, the Federal Government should provide grants or other resources to operators of such services as any major stakeholder would. Along similar lines, should the Federal government fund activities like third party audits of an open source project, or fund fixes or improvements, it should ensure not only that such efforts don't duplicate work already being done, it should ensure that the results of that work are shared (with a minimum of delay) publicly and upstream so that everyone can benefit from that investment.
These three approaches to collaboration would have an outsized impact on any of the specific efforts that the Federal government could undertake.
Where should Congress or the Administration focus efforts to best support and secure the open-sourced software ecosystem as a whole?
The private sector and the Federal government have a common cause in seeing broad improvements in the security of OSS. I'm happy to share where I see the private sector starting to invest in enhanced OSS security, in the hopes that this may inspire similar actions from others.
Education. Very few software developers ever receive a structured education in security fundamentals, and often must learn the hard way about how their work can be attacked. The OpenSSF's Secure Software Fundamentals courses are well regarded and themselves licensed as open source software, which means educational institutions of all kinds could deliver the content. Enterprises could also start to require it of their own developers, especially those who touch or contribute to OSS. There must be other techniques for getting this content into more hands and certifications against it into more processes.
Metrics and benchmarks. There are plenty of efforts to determine what are suitably objective metrics for characterizing the risks of OSS packages. But running the cloud systems to perform that measurement across the top 100,000 or even 10,000 open source projects may cost more than what can be provided for free by a single company, or may be fragile if only provided by a single vendor. Collective efforts funded by major stakeholders are being planned-for now, and governments as a partner to that would not be turned away.
Digital signatures. There is a long history of U.S. Government standards for identity proofing, public key management, signature verification, and so on. These standards are very sophisticated, but in open source circles, often simplicity and support are more important. This is pulling the open source ecosystem towards Project sigstore for the signing of software artifacts. We would encourage organizations of all sorts to look at sigstore and consider it for their OSS needs, even if it may not be suitable for all identity use cases.
Research and development investments into memory-safe languages. As detailed above, there are opportunities to eliminate whole categories of defects for critical infrastructure software by investing in alternatives written in memory-safe languages. This work is being done, but grants and investments can help accelerate that work.
Fund third-party code reviews for top open source projects. Most OSS projects, even the most critical ones, never receive the benefit of a formal review by a team of security experts trained to review code not only for small bugs that may lead to big compromises, but to look at architectural issues and even issues with the features offered by the software in the search for problems. Such audits vary tremendously in cost based on the complexity of the code, but an average for an average-sized code base would be $150K-250K. Covering the top 100 OSS projects with a review every other year, or even 200 every year, seems like a small price compared to the costs on US businesses to remedy or clean up after a breach caused by just one bug.
Invest into better supply chain security support in key build systems, package managers, and distribution sites. This is partly about seeing technologies like SBOMs, digital signatures, specifications like SLSA and others built into the most widely used dev tools so that they can be adopted and meaningfully used with a minimum of fuss. Any enterprise (including the Federal government) that has software certification processes based on the security attributes of software should consider how those tools could be enhanced with the above technologies, and automate many processes so that updates can be more frequent without sacrificing security.
These activities, if done at sufficient scale, could dramatically lower the risks of future disruptive events like we have seen. As a portfolio of different investments and activities they are mutually reinforcing, and none of them in isolation is likely to have much of a positive impact. Further econometrics research could help quantify the specific reduction of risk from each activity. But I believe that each represents a very cost-effective target for enhancing security in OSS no matter who is writing the check.
Thank you again for the opportunity to share these thoughts with you. I look forward to answering any questions you may have or providing you with further information.
Brian Behlendorf
General Manager, Open Source Security Foundation
Open Source Security Foundation Attracts New Commitments, Advances Key Initiatives in Weeks Since White House Security Summit
How to Disable 'su' Access for Sudo Users
Top 8 YUM/DNF ThirdParty Repositories for RHEL-Based Linux
How to Manage Linux Endpoints with Automation
Previous: Previous post: How to Install Slack Messaging Tool in Linux
Next: Next post: How to Install Icinga2 Monitoring Tool on OpenSUSE
How to Manage Download Settings on Brave Browser?
API Connectivity Manager Helps Dev and Ops Work Better Together


text:
ERJ Early View
ERS Publications
European Respiratory Journal
ERJ Open Research
European Respiratory Review
ERS Books
ERS publications home
Final treatment outcomes of multidrug- and extensively drug-resistant tuberculosis patients in Latvia receiving delamanid-containing regimens
Liga Kuksa, Linda Barkane, Norbert Hittel, Rajesh Gupta
European Respiratory Journal 2017 50: 1701105; DOI: 10.1183/13993003.01105-2017
Liga Kuksa
Riga East University Hospital for TB and Lung Disease Centre, Riga, Latvia
Linda Barkane
Norbert Hittel
Otsuka Novel Products GmbH, Munich, Germany
For correspondence: NHittel@otsuka-onpg.com
Rajesh Gupta
Otsuka Pharmaceutical Development and Commercialization, Inc., Rockville, MD, USA
Final treatment outcomes from the first cohort of delamanid MDR-TB patients in Latvia support its safety and efficacy http://ow.ly/6Mhy30fPv2f
Latvia is a high-priority country in the fight against tuberculosis (TB) in Europe, with an estimated TB incidence of 41 per 100 000 in 2015 [1]. In spite of an improving TB control programme [2] and cure rates reaching 80% for new and retreatment TB cases notified in 2014, multidrug-resistant (MDR-) TB (defined as TB resistant to rifampicin and isoniazid) rates in Latvia remain high [1]. An estimated 8% of new cases and 30% of retreatment TB cases were at least rifampicin-resistant (RR) in 2015 [1]. Cure rates in Latvia were 68% for the 2013 RR/MDR-TB cohort [1]. Of all the MDR-TB patients registered in 2015, 25% had extensively drug-resistant (XDR-) TB (defined as MDR-TB with additional resistance to a fluoroquinolone and a second-line injectable drug) [1].
Delamanid (Deltyba), a nitroimidazooxazole derivative, is an anti-TB drug exhibiting potent in vitro and in vivoantitubercular activity against drug-susceptible and -resistant strains of Mycobacterium tuberculosis [3, 4]. It was approved in the European Union in 2014 and included in the World Health Organization (WHO)'s MDR-TB treatment guidance [5]. Latvia was among the first countries to initiate treatment with delamanid following its approval in the EU. We present here a retrospective, post-marketing national cohort study describing the final treatment outcomes of MDR- and XDR-TB patients receiving delamanid in Latvia between July 2014 and August 2016.
All diagnosed TB patients and their final treatment outcomes in Latvia are recorded in the National TB Register, which was used as the data source for this study. All cultures positive for Mycobacterium tuberculosis undergo drug susceptibility testing against first-line and second-line drugs. Specimens from suspected MDR-TB cases are tested with the Xpert MTB/RIF assay (Cepheid, Sunnyvale, CA, USA); empirical second-line treatment is started immediately upon receipt of an RR result. Patients are managed in accordance with WHO recommendations and under an expert consilium [6–8].
Patients with laboratory-confirmed MDR-, pre-XDR (defined as MDR-TB with resistance to either a fluoroquinolone or second-line injectable agent, but not both [9]) and XDR-TB were selected for treatment with delamanid when no other treatment options were available, i.e. for reasons of resistance or tolerability.
The following information was recorded from the national TB register for all patients: age, sex, type and category of TB, presence of cavities at the start of treatment, HIV status, body mass index, presence/absence of diabetes mellitus, TB treatment history, optimised background regimen (OBR) in addition to delamanid, sputum culture status, and final treatment outcome. Data were collected in an MS Excel file (Microsoft version 2010, Redmond, WA, USA) and analysed with descriptive statistics and frequency counts. Approval for the study was received in November 2015 from the University of Latvia ethics committee.
19 patients who received delamanid had final treatment outcomes as of August 2016. Of the 19 patients, 15 (78.9%) were male. The mean age was 41.5 years (range: 11–66), and 17 (89.5%) patients were ≥18 years of age. All 19 (100%) patients had pulmonary disease, and two (10.5%) patients had pulmonary with additional extrapulmonary disease (the first with intestinal TB, and the second with urogenital TB and a submandibular TB positive abscess). 13 patients (68.4%) had received previous treatment for TB including one or more second-line TB drugs. Of the 19 patients, two (10.5%) had MDR-TB, eight (42.1%) had pre-XDR-TB, and nine (47.4%) had XDR-TB. Only one patient (5.3%) was HIV-positive, and no patient (0.0%) had diabetes. 11 (57.9%) patients had no cavities present, five (26.3%) had unilateral cavities, and three (15.8%) had bilateral cavities (table 1).
Demographic and clinical characteristics of patients who completed treatment with delamanid in Latvia (July 2014 to August 2016) (n=19)
The OBR included terizidone (n=15, 78.9%), linezolid (n=14, 73.7%), pyrazinamide (n=11, 57.9%), moxifloxacin (n=9, 47.4%), amoxicillin/clavulanate (n=9, 47.4%), protionamide (n=8, 42.1%), amikacin (n=5, 26.3%), levofloxacin (n=5, 26.3%), capreomycin (n=4, 21.1%), para-aminosalicylic acid (n=3, 15.8%), and imipenem/cilastatin (n=2, 10.5%).
The mean treatment duration with delamanid was 31.2 weeks (range 7–58), and 16 (84.2%) patients received delamanid for at least 24 weeks. Three patients (15.8%) received delamanid for <24 weeks. In two patients, delamanid replaced bedaquiline treatment after the completion of a full course of bedaquiline. In the third case, the patient's delamanid treatment was stopped after 2 months when drug susceptibility testing results became available and an effective MDR-TB regimen could be composed without delamanid. 10 patients (52.6%) received delamanid for longer (36–58 weeks) than the label-approved 24-week treatment duration; all 10 had either pre-XDR-TB (n=5) or XDR-TB (n=5).
Final treatment outcomes were as follows: 16 patients (84.2%) were classified as cured (treatment completed as recommended by the national policy without evidence of failure, and three or more consecutive cultures taken at least 30 days apart are negative after the intensive phase), three patients (15.8%) were lost to follow-up, and there were no deaths or treatment failures. Amongst the patients lost to follow-up, all three were culture negative for M. tuberculosis prior to default, and their total MDR-TB treatment duration ranged from 7 to 16 months. The overall MDR-TB treatment duration for the 16 cured patients ranged from 11 to 19 months (mean 15 months). Following the Latvian national programme recommendations following cure, patients are followed up every 6 months, including sputum evaluation. To date, no relapse has been registered among the 19 patients.
ECG was performed typically once a month, or more often if deemed necessary, during patients' MDR-TB therapy. The QTcF (QT interval corrected by Fridericia's method) value did not exceed 500 ms for any patient (0.0%) and hepatotoxicity was not reported for any patient. No other clinically relevant adverse events were attributed to delamanid treatment.
This report represents the first cohort of final treatment outcomes for delamanid patients in the Latvian programmatic setting. The 19 patients in this cohort study represent severe MDR-TB cases, with 17 patients (89.5%) having pre-XDR or XDR-TB (eight (42.1%) with unilateral or bilateral cavitary disease) and two (10.5%) with additional extrapulmonary disease. Thus, the prognosis for these patients was expected to be poor. However, 84.2% (16 out of 19) of patients were cured and, based on the last culture result available, patients lost to follow-up were all sputum negative. In contrast, a study of 1779 registered MDR-TB patients in Latvia from 2000 to 2010 showed cure rates of 67% and 50% for MDR-TB and XDR-TB, respectively [10].
Many of the patients included in the present cohort required delamanid treatment beyond 24 weeks, but the overall MDR-TB treatment duration in patients that completed MDR-TB therapy was shorter (mean 15 months, range 11–19 months) than the standard 18–24 months. Reasons for the shorter overall MDR-TB treatment durations were quick conversion, effective medications at treatment start, good tolerance to regimens, and low frequency of bilateral cavitation. Recently, the WHO recommended the use of a shorter standard MDR-TB regimen under specific conditions [11]. The feasibility of implementing shorter MDR-TB treatment regimens utilising delamanid is currently being explored in several studies [12].
Adverse events were consistent with symptoms and complications of TB and comorbidities, and do not appear to add to the frequency or severity of previously reported adverse events for delamanid [13, 14]. Notably, QTc interval prolongation was of lower frequency than reported in clinical trials, reflecting other reports from the use of delamanid in programmatic settings [12, 13]. Furthermore, consistent with data throughout its clinical development programme, delamanid did not contribute to hepatotoxicity [12–16].
This study supports the effectiveness and safety of delamanid in the treatment of MDR-TB in a programmatic setting, and reflects the current favourable outcomes in MDR-TB patients with advanced disease treated within Latvia's state programme for treatment of lung disease.
L. Barkane ERJ-01105-2017_Barkane
R. Gupta ERJ-01105-2017_Gupta
N. Hittel ERJ-01105-2017_Hittel
L. Kuksa ERJ-01105-2017_Kuksa
Conflict of interest: Disclosures can be found alongside this article at erj.ersjournals.com
Received June 1, 2017.
Accepted August 25, 2017.
Copyright ©ERS 2017
European Centre for Disease Prevention and Control/WHO Regional Office for Europe
. Tuberculosis surveillance and monitoring in Europe 2017. Stockholm, European Centre for Disease Prevention and Control, 2017.
Miller TL,
Cirule A,
Wilson FA
, et al. The value of effective public tuberculosis treatment: an analysis of opportunity costs associated with multidrug resistant tuberculosis in Latvia. Cost Eff Resour Alloc 2013; 11: 9.
Blair HA,
Scott LJ
. Delamanid: a review of its use in patients with multidrug-resistant tuberculosis. Drugs 2015; 75: 91–100.
Matsumoto M,
Hashizume H,
Tomishige T
, et al. OPC-67683, a nitro-dihydro-imidazooxazole derivative with promising action against tuberculosis in vitro and in mice. PLoS Med 2006; 3: e466.
. The use of delamanid in the treatment of multidrug-resistant tuberculosis. Interim policy guidance. WHO/HTM/TB/2014.23. Geneva, World Health Organization, 2014.
Latvia-Ministry-of-Health
. National TB treatment guidelines, Latvia. Riga, Latvia, National TB Programme, 1997.
. Treatment of Tuberculosis: Guidelines. 4th Edn. WHO/HTM/TB/2009.420. Geneva, World Health Organization, 2009.
Tadolini M,
Garcia-Prats AJ,
D'Ambrosio L
, et al. Compassionate use of new drugs in children and adolescents with multidrug-resistant and extensively drug-resistant tuberculosis: early experiences and challenges. Eur Respir J 2016; 48: 938–943.
Banerjee R,
Allen J,
Westenhouse J
, et al. Extensively drug-resistant tuberculosis in California, 1993–2006. Clin Infect Dis 2008; 47: 450–457.
Kuksa L,
Riekstina V,
Leimane V
, et al. Multi- and extensively drug-resistant tuberculosis in Latvia: trends, characteristics and treatment outcomes. Public Health Action 2014; 4: Suppl. 2, S47–S53.
Falzon D,
Schuenemann HJ,
Harausz E
, et al. World Health Organization treatment guidelines for drug-resistant tuberculosis, 2016 update. Eur Respir J 2017; 49: 1602308.
Otsuka Pharmaceutical
. Progress in Otsuka's FighTBack Initiative. Presented at the Working Group on New TB Drugs (WGND) Meeting. Liverpool, UK, October 2016. www.newtbdrugs.org/sites/default/files/meetings/files/08_Otsuka%20Update%20for%20WGND%20meeting%20Oct%202016%20FINAL.pdf Date last accessed: September 04, 2017.
Gler MT,
Skripconoka V,
Sanchez-Garavito E
, et al. Delamanid for multidrug-resistant pulmonary tuberculosis. N Engl J Med 2012; 366: 2151–2160.
Danilovits M,
Pehme L
, et al. Delamanid improves outcomes and reduces mortality in multidrug-resistant tuberculosis. Eur Respir J 2013; 41: 1393–1400.
Hafkin J,
Hittel N,
Martin A
, et al. Early outcomes in MDR and XDR-TB patients treated with delamanid under compassionate use. Eur Respir J 2017; 41: 1700311.
Gupta R,
Wells CD,
Hittel N
, et al. Delamanid in the treatment of multidrug-resistant tuberculosis. Int J Tuberc Lung Dis 2016; 20: Suppl. 1, S33–S37.
Vol 50 Issue 5 Table of Contents
Thank you for your interest in spreading the word on European Respiratory Society .
You are going to email the following Final treatment outcomes of multidrug- and extensively drug-resistant tuberculosis patients in Latvia receiving delamanid-containing regimens
Message Subject (Your Name) has sent you a message from European Respiratory Society
Message Body (Your Name) thought you would like to see the European Respiratory Society web site.
European Respiratory Journal Nov 2017, 50 (5) 1701105; DOI: 10.1183/13993003.01105-2017
Respiratory infections and tuberculosis
PCD patients have the same P. aeruginosa clone in sinuses and lungs
Enabling personalised respiratory medicine through clinical research
Show more Agora
Latent tuberculosis infection among minor asylum seekers
Show more Research letters
About the ERJ
The European Respiratory Society
Society home
ERS books online
ERS Bookshop
ERS author centre
Accessing the ERS publications
European Respiratory Society
442 Glossop Road
Sheffield S10 2PX
Email: journals@ersnet.org
Copyright © 2020 by the European Respiratory Society


Do I still need to purchase an SSL certificate for my site if I am using your SSL form?
I am putting a form on my site which will have credit card details entered into it and I want it to be secure for my customers, do I need to have both the SSL form and an SSL certificate or does the form cover the security.
Also is there a way of reducing the space between each line?
site. Only the data entered in the form are transmitted via the secure socket layer.
Other information on the site will not be included in the encryption.
In the preferences section you can change the question spacing.
2. While on the "Setup & Embed" tab, click "Preferences"
5. Click "Close Settings" and save your change.
1. Go to Setup & Embed tab, then click Preferences button.
You can change the value according to your needs.


text:
Neil Young Adds Extra UK Dates
Demand for the singer's first tour in five years sees shows sell out
Neil Young has added two further dates to his UK tour which is due to take place next March.
The singer, who has just finished up his North American tour with a six night stint at New York's United Palace, will now play London's Hammersmith Apollo on March 14 and 15 in addition to the previously announced dates, bringing his total nights at the venue up to six.
Young's current tour has seen the singer perform with the musicians who worked on his latest album 'Chrome Dreams': Ben Keith (pedal steel, dobro), Ralph Molina (drums) and Rick Rosas (bass) and the shows will be split into two sets, one acoustic and one electric.
Support on all dates will come from Young's wife Pegi.
Neil Young will now play:
Edinburgh, Playhouse (March 3)
London, Hammersmith Apollo (5/6/8/9/11/14/15)
Manchester Apollo (11/12)
More information from: www.neilyoung.com.


text:
Mangala slams disinformation campaign on alleged assassination plot
The Criminal Investigation Department (CID) has not made any statement to establish or corroborate the allegations of a plot to assassinate President Maithripala Sirisena, former President Mahinda Rajapaksa and former Defence Secretary Gotabhaya Rajapaksa, Finance and Mass Media Minister Mangala Samaraweera said.
The minister made this observation in a statement yesterday on the misreporting of the CID Investigation regarding the complaint by A.M.Namal Kumara.
The minister requested the media to exercise caution when reporting on criminal investigations with serious implications to the security of the state."Several media outlets have given wide publicity to false, unattributed claims that the CID had alleged in court that an Indian national had confirmed the existence of a plot to assassinate President Sirisena, Rajapaksa and others. These news reports are false, baseless and inflammatory. The CID has not, at any time, in either written or verbal submissions to the Magistrates Court, made any statement that could lead to the conclusion or inference that an assassination plot has been established or corroborated, whether through "Marceli Thomas" or by any other means," the minister stressed in his statement.
"Journalists are free to observe any court proceedings in person or to apply for transcripts of proceedings and court filings through the Registrar of the Court. Therefore, it is inexcusable to make such serious and inflammatory statements on a matter of public record without citing any sources or mode of corroboration. Responsible media organisations and public figures alike should restrict their reporting on judicial matters to the written and verbal submissions made by parties before the court," the minister said.
"The CID is conducting investigations into serious allegations of an alleged conspiracy to assassinate President Maithripala Sirisena, former President Mahinda Rajapaksa and former Defence Secretary Gotabhaya Rajapaksa, amongst others. As of this time, the only source for these allegations is a statement made by A.M. Namal Kumara. While the CID has yet to report any evidence substantiating the existence of such a plot, these allegations are so grave in their implication that CID detectives must take every precaution thoroughly investigate and seek to corroborate their every element, as a matter of national security," the statement explained.
"On Monday, CID officers arrested Indian national "Marceli Thomas" in connection with this investigation. Yesterday, Thomas was produced before the Colombo Fort Magistrates Court, and an order to detain him in CID custody was sought and obtained. The reason CID officers sought to detain him was to conduct further investigations on a suspicion that he may have violated Section 5 of the Prevention of Terrorism Act No. 48 of 1978 by failing to report information pertaining to plans to commit an act of terror. This suspicion was filed in writing by the CID and stated verbally in open court. Further evidence in support of this submission was shared with the Honourable Magistrate in the Chambers," it added.
(Source: Daily News)
Home » Mangala slams disinformation campaign on alleged assassination plot