text:
CPTDB | Transit Discussion
Ontario Transit Discussion
Streetcar News
By CLRV4037, August 24, 2006 in Greater Toronto Area
TechnicaProductions
10 hours ago, 63 Ossington said:
Just another odd spotting; 4048 with a front rollsign in its rear slot. This may may or may not be old, but it was the first time I saw it.
Spotted Thursday morning on the 511.
There's an ALRV out there with the same thing, not sure if it's retired or not though
WoodbineSecondExit
4 hours ago, TechnicaProductions said:
63 Ossington
Strike V.
CPTDB Wiki Editor
Location:Toronto
Several CLRV's on St Clair today - was surprised to see them out today. But then again there are a handful of Flexitys out of service including one that was in a collision at Russell Hill on St Clair yesterday. Haven't seen weekend CLRV's on the 512 for a while.
Articulated
CPTDB Wiki Moderator
3 minutes ago, 63 Ossington said:
Well since it's the CNE time, they are now assigning Flexity cars to the 511. Transsee currently reporting all 12 cars on the 511 are Flexitiy cars, and there are extra cars out on 509 too. So that leaves fewer cars available for use on other lines...
Just now, Articulated said:
True, I completely forgot about the CNE. That would totally explain it.
ttc rider
On 8/18/2018 at 4:06 PM, 63 Ossington said:
Several CLRV's on St Clair today - was surprised to see them out today. But then again there are a handful of Flexitys out of service including one that was in a collision at Russell Hill on St Clair yesterday.[…]
The Flexity involved in the collision at Russell Hill was 4404, but it was repaired quickly, and was back in service five days later, on Aug 22. Also, looking at my data, several Flexities have returned to service in the last couple of days, after having gone missing for up to two weeks. This includes 4403, 4408, 4429, 4434, 4469 & 4485.
The following cars have been missing for a relatively long time and may have issues:
4405 (unexpectedly changed-off on 9-Aug and missing since then)
4407 & 4416 (both changed-off in the early morning of 21-Aug)
4419 (no service since 8-Aug).
4471 & 4478 (flooded at King & Atlantic on 7-Aug)
4481 (last in service on 7-Aug, perhaps damaged in the same flood, as well?)
bus_7246
Location:Streetcarland, Toronto, On
4471 & 78 are definitely sidelined for an extended period of time. All the electrical elements on the cars were compromised. Presto hardware has been removed. The two cars are in the deadlane at Leslie Barns.
26 minutes ago, bus_7246 said:
Thanks for this. Can you tell us anything about car 4489? At 47 days and counting since delivery, this is the car that is taking the longest to commission by far. What is wrong with it?
An article about flood damage on Flexity cars.
https://www.thestar.com/news/gta/2018/08/27/august-flooding-damaged-nine-new-ttc-streetcars.html
So the damage to 4471 & 4478 appears to be more extensive than it was speculated here in the days immediately after that event.
The article indicates there are four cars sidelined for an extended period of time. Looking at the dispatch data after the flood, 4481 must be one of them, since it hasn't been in service since August 7.
Does anyone know what the fourth one is? (looking at my data, I am inclined to say it is 4419, but it was in service the day after the flood, on August 8, and has been missing since, so I am not sure. On the other hand, all the other Flexity cars appear to have seen service after August 7).
smallspy
Location:Toronto, Ont.
11 hours ago, ttc rider said:
Speculated by whom, exactly? Most of us who know anything at all knew that those cars were going to be sidelined for a very long time. The interiors of both of those cars will need to be replaced as a very basic start, which is not an insignificant job.
Ontario_Transit
4416 tracker is acting up and 4478 is still tracking where it became a toilet. Does anyone know when it'll be shipped to NY?
kevhu
It is indeed 4419. See https://twitter.com/TTCStuart/status/1034440378978639873
14 hours ago, smallspy said:
It is not just the interiors that require complete replacement. The damage goes beyond that and is extensive enough that the cars cannot be repaired in-house and need to be sent back to the manufacturer. Based on the info we now have from the TTC, a lot of electrical components are fried. I imagine the entire cab circuitry and any circuit boards/conduits located under the floor are done and require replacement. While a press article may not be the best source of information, our colleague @bus_7246 who works in maintenance said so himself:
All in all, while critical components on the roof were probably spared, this doesn't seem to me like a situation where "very little mechanical or electrical were affected by flooding", like you suggested in this thread. It is not just a matter of replacing the interior and pressure-washing the underframe, trucks etc.
On 8/8/2018 at 1:57 PM, smallspy said:
In the case of the streetcars, very little mechanical or electrical would have been affected by flooding as all of the really delicate stuff is mounted in the roof. What is going to cause the greatest amount of downtime is replacing the interior.
TTC T6H-5307N 2252
I'm assuming 4471 & 4478 will be taken by CP Rail to buffalo then interchanged with NS to kanona ny
There is virtually nothing electrical under the floors, save for the braking and motors and maybe parts of the sanders.
There are control cabinets in the cab behind the operator - apparently they got damaged. But they are low-voltage systems, and not the expensive high-voltage systems in the roofs of the cars. There are circuit boards under the dashboards, but they are only to communicate with the driver. Hell, they powered on one of the cars after removing it from the water, although I highly doubt that it was in any condition to be able to move itself.
But again - the vast, vast majority of the work that is necessary to be done to the cars to return them to service, from a manpower and cost standpoint, is in the interiors. The electrical system damage sucks, but at the end of the day all of that stuff is designed to be able to be replaced if necessary. The insulation in the walls and floors of the cars is not.
Here's a bit of an anecdote to help you understand what needs to be done. Remember that GO train that got flooded in the Don Valley a couple of years ago? The lower level of several cars was completely under water up to the ceiling - that means that the whole train was under about 8 feet of water. The delicate locomotive? It was back in service in 2 weeks, after having the traction motors, gearboxes and some of the air system replaced. The first coach didn't re-enter service until almost a year later, as they needed to strip almost the whole car back to the structure to replace stuff that was never really meant to be replaced.
Ed T.
The beautiful new long-under-construction ROW on The Queensway already has a slow operation zone, at the west end of the bridge before the curve to enter Humber loop.
Also, and quite inexplicably, the platforms at Colborne Lodge Drive don't have any pedestrian signal request buttons. You have to hope that someone on one of the street corners pushes the button....or you can make a dash for it. 🏂
Overhead damage and disablement still ongoing at St Clair West.. from 3:00 PM (according to the Twitter timestamp). Supposedly EB car 4461 had its pantograph up going into the station and it wrecked the overhead at the EB 512 platform. Powered off, and was coupled up to 4437 which was behind it around 7 ish. 4461 was ditched in the EB throughfare track powered off, fitted with wheel chocks and uncoupled from 4437 shortly after. 4437 is now tracking at Hillcrest, and 4461 still tracking at SCW, waiting time quoted 4 hours.
The line was bypassing the station loop; station service was at Bathurst and Tweedsmuir. Buses were loading at street level with on-street looping.
Photos are of 4461. Not sure how damaged the panto is - looks like it has been tied down.
Wasn't there a recent St. Clair shutdown used to convert the overhead in the station to new style for the changeover to pans this fall?!
28 minutes ago, WoodbineSecondExit said:
It has been nightly weekday shutdowns after midnight since April, and supposedly it's supposedly behind schedule and not complete (despite tomorrow scheduled as being the last day of work before panto operation)
13 hours ago, Ed T. said:
Good to see the TTC's mission of perpetually slowing down streetcar service down even more is going well. Is there an actually a legitimate reason as to why there's a speed restriction in that area now? It makes sense that streetcars would have to slow down before entering that curve, but there's no need to institute a speed restriction along a good stretch of that area..
9 hours ago, lip said:
Is there an actually a legitimate reason as to why there's a speed restriction in that area now?
There's a wet or dark looking joint in the concrete where the downslope from the bridge ends and level track begins. I suppose that could be the issue.
Genius101
We're finally seeing the Flexities being deployed on the 501 as of today, one step closer towards providing a 100% accessible streetcar network.
110B West Pickering
GTATransit on Youtube
Location:Durham Region
4479 on the 501L right now
leylandvictory2
12 minutes ago, 110B West Pickering said:
yup. 501 will use Flexities baring there is no shortage of them.
Chameleon (Default)
Canadian Public Transit Discussion Board Powered by Invision Community


text:
Q: A word or term for "delivered upon request" Imagine a machine, that delivers items to users.
Sometimes the machine delivers items that were not requested by the user.
I refer to these as "excess items". What would be a good word or term for items that are delivered upon request? I'm looking for alternatives to "requested items", that entail that the item was both requested and delivered.

redpajama_set_name: RedPajamaStackExchange


text:
Trump campaign raises over 30 mln USD in first quarter: reports
0 Comment(s) Print E-mail Xinhua, April 15, 2019
WASHINGTON, April 14 (Xinhua) -- The re-election campaign of U.S. President Donald Trump raised more than 30 million U.S. dollars in the first quarter of 2019, CNN reported on Sunday.
Trump's re-election effort now has a substantial 40.8 million dollars remaining in the bank, Tim Murtaugh, the campaign's director of communications, was quoted by CNN as saying.
Murtaugh tweeted Sunday evening that nearly 99 percent of donations were 200 dollars or less, with an average contribution of 34.26 dollars.
The amount that the Trump re-election raised in the first quarter rivaled the combined fundraising haul of the two leading Democrats.
Vermont Senator Bernie Sanders, who has made his second bid for the U.S. presidency, led Democratic fundraising with 18.2 million dollars in a window of 41 days, as he officially launched his campaign in February.
California Senator Kamala Harris, the state's former attorney general, followed with 12 million dollars.
Trump filed his paperwork for re-election on the day he took the oath of office in early 2017.
The first-quarter haul this year was an uptick from the 21 million dollars that the president raised during the final quarter of 2018. Enditem

redpajama_set_name: RedPajamaCommonCrawl


text:
define([
  'dojo/_base/declare', 'dojo/_base/array', 'dijit/_WidgetBase', 'dojo/_base/lang', 'dojo/_base/Deferred',
  'dojo/on', 'dojo/request', 'dojo/dom-class', 'dojo/dom-construct',
  'dojo/text!./templates/ComprehensiveGenomeAnalysis.html', 'dojo/NodeList-traverse', 'dojo/store/Memory',
  'dijit/popup', 'dijit/TooltipDialog', 'dijit/Dialog',
  './AppBase', '../../WorkspaceManager'
], function (
  declare, array, WidgetBase, lang, Deferred,
  on, xhr, domClass, domConstruct,
  Template, children, Memory,
  popup, TooltipDialog, Dialog,
  AppBase, WorkspaceManager
) {

  return declare([AppBase], {
    baseClass: 'App Assembly2',
    pageTitle: 'Comprehensive Genome Analysis Service',
    templateString: Template,
    applicationName: 'ComprehensiveGenomeAnalysis',
    requireAuth: true,
    applicationLabel: 'Comprehensive Genome Analysis',
    applicationDescription: 'The Comprehensive Genome Analysis Service provides a streamlined analysis "meta-service" that accepts raw reads and performs a comprehensive analysis including assembly, annotation, identification of nearest neighbors, a basic comparative analysis that includes a subsystem summary, phylogenetic tree, and the features that distinguish the genome from its nearest neighbors.',
    applicationHelp: 'user_guides/services/comprehensive_genome_analysis_service.html',
    tutorialLink: 'tutorial/comprehensive-genome-analysis/comprehensive-genome-analysis2.html',
    libraryData: null,
    defaultPath: '',
    startingRows: 6,
    libCreated: 0,
    // below are from annotation
    required: true,
    genera_four: ['Acholeplasma', 'Entomoplasma', 'Hepatoplasma', 'Hodgkinia', 'Mesoplasma', 'Mycoplasma', 'Spiroplasma', 'Ureaplasma'],
    code_four: false,

    constructor: function () {
      this.addedLibs = { counter: 0 };
      this.pairToAttachPt = ['read1', 'read2'];
      this.singleToAttachPt = ['single_end_libs'];
      this.libraryStore = new Memory({ data: [], idProperty: '_id' });
      this._autoTaxSet = false;
      this._autoNameSet = false;
    },

    startup: function () {
      if (this._started) {
        return;
      }
      if (this.requireAuth && (window.App.authorizationToken === null || window.App.authorizationToken === undefined)) {
        return;
      }
      this.inherited(arguments);
      var _self = this;
      _self.defaultPath = WorkspaceManager.getDefaultFolder() || _self.activeWorkspacePath;
      _self.output_path.set('value', _self.defaultPath);
      for (var i = 0; i < this.startingRows; i++) {
        var tr = this.libsTable.insertRow(0);// domConstr.create("tr",{},this.libsTableBody);
        domConstruct.create('td', { innerHTML: "

" }, tr);
        domConstruct.create('td', { innerHTML: "

" }, tr);
        domConstruct.create('td', { innerHTML: "

" }, tr);
      }
      this.numlibs.startup();

      this.pairToAttachPt.concat(this.singleToAttachPt).forEach(lang.hitch(this, function (attachname) {
        this[attachname].searchBox.validator = lang.hitch(this[attachname].searchBox, function (/* anything */ value, /* __Constraints */ constraints) {
          return (new RegExp('^(?:' + this._computeRegexp(constraints) + ')' + (this.required ? '' : '?') + '$')).test(value) &&
            (!this._isEmpty(value)) &&
            (this._isEmpty(value) || this.parse(value, constraints) !== undefined); // Boolean
        });
      }));
      this._started = true;
    },

    getValues: function () {
      var values = this.inherited(arguments);
      // inputs that are NOT needed by the backend
      var not_needed_inputs = ['startWith', 'libdat_file1pair', 'libdat_file2pair', 'libdat_readfile'];
      not_needed_inputs.forEach(function (key) {
        if (Object.prototype.hasOwnProperty.call(values, key)) {
          delete values[key];
        }
      });
      if (this.startWithRead.checked) { // start from read file
        var pairedList = this.libraryStore.query({ _type: 'paired' });
        var singleList = this.libraryStore.query({ _type: 'single' });
        var srrAccessionList = this.libraryStore.query({ _type: 'srr_accession' });
        var pairedLibs = [];
        var singleLibs = [];
        var srrAccessions = [];

        pairedLibs = pairedList.map(function (lrec) {
          var rrec = {};
          Object.keys(lrec).forEach(lang.hitch(this, function (attr) {
            if (!attr.startsWith('_')) {
              rrec[attr] = lrec[attr];
            }
          }));
          return rrec;
        });
        if (pairedLibs.length) {
          values.paired_end_libs = pairedLibs;
        }

        singleLibs = singleList.map(function (lrec) {
          var rrec = {};
          Object.keys(lrec).forEach(lang.hitch(this, function (attr) {
            if (!attr.startsWith('_')) {
              rrec[attr] = lrec[attr];
            }
          }));
          return rrec;
        });
        if (singleLibs.length) {
          values.single_end_libs = singleLibs;
        }

        srrAccessions = srrAccessionList.map(function (lrec) {
          return lrec._id;
        });
        if (srrAccessions.length) {
          values.srr_ids = srrAccessions;
        }
        delete values.contigs;       // contigs file is not needed
        values.input_type = 'reads'; // set input_type to be 'reads'

      } // startWithRead

      values.scientific_name = this.output_nameWidget.get('displayedValue');
      values.taxonomy_id = this.tax_idWidget.get('displayedValue');
      if (this.startWithContigs.checked) {  // starting from contigs
        values.input_type = 'contigs'; // set input_type to be 'contigs'
        var assembly_inputs = ['recipe', 'genome_size', 'trim', 'racon_iter', 'pilon_iter', 'min_contig_len', 'min_contig_cov'];
        assembly_inputs.forEach(function (key) {
          if (Object.prototype.hasOwnProperty.call(values, key)) {
            delete values[key];
          }
        });
      }

      return values;
    },

    ingestAttachPoints: function (input_pts, target, req) {
      req = typeof req !== 'undefined' ? req : true;
      var success = 1;
      var duplicate = false;
      if (target._type) {
        target._id = this.makeLibraryID(target._type);
        duplicate = target._id in this.libraryStore.index;
      }
      input_pts.forEach(function (attachname) {
        var cur_value = null;
        var incomplete = 0;
        var browser_select = 0;
        var alias = attachname;
        if (attachname == 'read1' || attachname == 'read2' || attachname == 'single_end_libs') {
          cur_value = this[attachname].searchBox.value;
          browser_select = 1;
        }
        else if (attachname == 'output_path') {
          cur_value = this[attachname].searchBox.value;
          browser_select = 1;
        }
        else {
          cur_value = this[attachname].value;
        }

        // Assign cur_value to target
        if (attachname == 'single_end_libs') {
          alias = 'read';
        }
        if (typeof (cur_value) === 'string') {
          target[alias] = cur_value.trim();
        }
        else {
          target[alias] = cur_value;
        }
        if (req && (duplicate || !target[alias] || incomplete)) {
          if (browser_select) {
            this[attachname].searchBox.validate(); // this should be whats done but it doesn't actually call the new validator
            this[attachname].searchBox._set('state', 'Error');
            this[attachname].focus = true;
          }
          success = 0;
        }
        else {
          this[attachname]._set('state', '');
        }
        if (target[alias] != '') {
          target[alias] = target[alias] || undefined;
        }
        else if (target[alias] == 'true') {
          target[alias] = true;
        }
        else if (target[alias] == 'false') {
          target[alias] = false;
        }
      }, this);
      return (success);
    },

    makeLibraryName: function (mode) {
      switch (mode) {
        case 'paired':
          var fn = this.read1.searchBox.get('displayedValue');
          var fn2 = this.read2.searchBox.get('displayedValue');
          var maxName = 14;
          if (fn.length > maxName) {
            fn = fn.substr(0, (maxName / 2) - 2) + '...' + fn.substr((fn.length - (maxName / 2)) + 2);
          }
          if (fn2.length > maxName) {
            fn2 = fn2.substr(0, (maxName / 2) - 2) + '...' + fn2.substr((fn2.length - (maxName / 2)) + 2);
          }
          return 'P(' + fn + ', ' + fn2 + ')';

        case 'single':
          var fn = this.single_end_libs.searchBox.get('displayedValue');
          maxName = 24;
          if (fn.length > maxName) {
            fn = fn.substr(0, (maxName / 2) - 2) + '...' + fn.substr((fn.length - (maxName / 2)) + 2);
          }
          return 'S(' + fn + ')';

        case 'srr_accession':
          var name = this.srr_accession.get('value');
          return '' + name;

        default:
          return '';
      }
    },

    makeLibraryID: function (mode) {
      switch (mode) {
        case 'paired':
          var fn = this.read1.searchBox.get('value');
          var fn2 = this.read2.searchBox.get('value');
          return fn + fn2;

        case 'single':
          var fn = this.single_end_libs.searchBox.get('value');
          return fn;

        case 'srr_accession':
          var name = this.srr_accession.get('value');
          return name;

        default:
          return false;
      }
    },

    onReset: function (evt) {
      domClass.remove(this.domNode, 'Working');
      domClass.remove(this.domNode, 'Error');
      domClass.remove(this.domNode, 'Submitted');
      var toDestroy = [];
      this.libraryStore.data.forEach(lang.hitch(this, function (lrec) {
        toDestroy.push(lrec._id);
      }));
      // because its removing rows cells from array needs separate loop
      toDestroy.forEach(lang.hitch(this, function (id) {
        this.destroyLibRow(id, '_id');
      }));
    },

    // counter is a widget for requirements checking
    increaseRows: function (targetTable, counter, counterWidget) {
      counter.counter += 1;
      if (typeof counterWidget !== 'undefined') {
        counterWidget.set('value', Number(counter.counter));
      }
    },

    decreaseRows: function (targetTable, counter, counterWidget) {
      counter.counter -= 1;
      if (typeof counterWidget !== 'undefined') {
        counterWidget.set('value', Number(counter.counter));
      }
    },

    onAddSingle: function () {
      // console.log("Create New Row", domConstruct);
      var lrec = { _type: 'single' };
      var chkPassed = this.ingestAttachPoints(this.singleToAttachPt, lrec);
      if (chkPassed) {
        var infoLabels = {
          platform: { label: 'Platform', value: 1 },
          read: { label: 'Read File', value: 1 }
        };
        this.addLibraryRow(lrec, infoLabels, 'singledata');
      }
    },

    destroyLibRow: function (query_id, id_type) {
      var query_obj = {};
      query_obj[id_type] = query_id;
      var toRemove = this.libraryStore.query(query_obj);
      toRemove.forEach(function (obj) {
        domConstruct.destroy(obj._row);
        this.decreaseRows(this.libsTable, this.addedLibs, this.numlibs);
        if (this.addedLibs.counter < this.startingRows) {
          var ntr = this.libsTable.insertRow(-1);
          domConstruct.create('td', { innerHTML: "

" }, ntr);
          domConstruct.create('td', { innerHTML: "

" }, ntr);
          domConstruct.create('td', { innerHTML: "

" }, ntr);
        }
        obj._handle.remove();
        this.libraryStore.remove(obj._id);
      }, this);
    },

    onAddPair: function () {
      if (this.read1.searchBox.get('value') == this.read2.searchBox.get('value')) {
        var msg = 'READ FILE 1 and READ FILE 2 cannot be the same.';
        new Dialog({ title: 'Notice', content: msg }).show();
        return;
      }
      var lrec = { _type: 'paired' };
      var pairToIngest = this.pairToAttachPt;
      var chkPassed = this.ingestAttachPoints(pairToIngest, lrec);
      if (chkPassed) {
        var infoLabels = {
          platform: { label: 'Platform', value: 1 },
          read1: { label: 'Read1', value: 1 },
          read2: { label: 'Read2', value: 1 }
        };
        this.addLibraryRow(lrec, infoLabels, 'pairdata');
      }
    },

    addLibraryRow: function (lrec, infoLabels, mode) {
      var tr = this.libsTable.insertRow(0);
      lrec._row = tr;
      var td = domConstruct.create('td', { 'class': 'textcol ' + mode, libID: this.libCreated, innerHTML: '' }, tr);
      var advInfo = [];

      switch (mode) {
        case 'pairdata':
          td.innerHTML = "
" + this.makeLibraryName('paired') + '
';
          advInfo.push('Paired Library');
          break;

        case 'singledata':
          td.innerHTML = "
" + this.makeLibraryName('single') + '
';
          advInfo.push('Single Library');
          break;

        case 'srrdata':
          td.innerHTML = "
" + this.makeLibraryName('srr_accession') + '
';
          advInfo.push('SRA run accession');
          break;

        default:
          console.error('wrong data type', lrec, infoLabels, mode);
          break;
      }
      // fill out the html of the info mouse over
      Object.keys(infoLabels).forEach(lang.hitch(this, function (key) {
        if (lrec[key] && lrec[key] != 'false') {
          if (infoLabels[key].value) {
            advInfo.push(infoLabels[key].label + ':' + lrec[key]);
          }
          else {
            advInfo.push(infoLabels[key].label);
          }
        }
      }));
      if (advInfo.length) {
        var tdinfo = domConstruct.create('td', { innerHTML: "" }, tr);
        var ihandle = new TooltipDialog({
          content: advInfo.join('
'),
          onMouseLeave: function () {
            popup.close(ihandle);
          }
        });
        on(tdinfo, 'mouseover', function () {
          popup.open({
            popup: ihandle,
            around: tdinfo
          });
        });
        on(tdinfo, 'mouseout', function () {
          popup.close(ihandle);
        });
      }
      else {
        var tdinfo = domConstruct.create('td', { innerHTML: '' }, tr);
      }
      var td2 = domConstruct.create('td', { innerHTML: "" }, tr);
      if (this.addedLibs.counter < this.startingRows) {
        this.libsTable.deleteRow(-1);
      }
      var handle = on(td2, 'click', lang.hitch(this, function (evt) {
        this.destroyLibRow(lrec._id, '_id');
      }));
      this.libraryStore.put(lrec);
      lrec._handle = handle;
      this.increaseRows(this.libsTable, this.addedLibs, this.numlibs);
      this.checkParameterRequiredFields();
    },

    // below is from annotation
    changeCode: function (item) {
      this.code_four = false;
      item.lineage_names.forEach(lang.hitch(this, function (lname) {
        if (array.indexOf(this.genera_four, lname) >= 0) {
          this.code_four = true;
        }
      }));
      this.code_four ? this.genetic_code.set('value', '4') : this.genetic_code.set('value', '11');
    },

    onTaxIDChange: function (val) {
      this._autoNameSet = true;
      var tax_id = this.tax_idWidget.get('item').taxon_id;
      // var tax_obj=this.tax_idWidget.get("item");
      if (tax_id) {
        var name_promise = this.scientific_nameWidget.store.get(tax_id);
        name_promise.then(lang.hitch(this, function (tax_obj) {
          if (tax_obj) {
            this.scientific_nameWidget.set('item', tax_obj);
            this.scientific_nameWidget.validate();
            this.changeCode(this.tax_idWidget.get('item'));
          }
        }));
      }
      this._autoTaxSet = false;
    },

    updateOutputName: function () {
      var charError = document.getElementsByClassName('charError')[0];
      charError.innerHTML = ' ';
      var current_output_name = [];
      var sci_item = this.scientific_nameWidget.get('item');
      var label_value = this.myLabelWidget.get('value');
      if (label_value.indexOf('/') !== -1 || label_value.indexOf('\\') !== -1) {
        return charError.innerHTML = 'slashes are not allowed';
      }
      if (sci_item && sci_item.lineage_names.length > 0) {
        current_output_name.push(sci_item.lineage_names.slice(-1)[0].replace(/\(|\)|\||\/|:/g, ''));
      }
      if (label_value.length > 0) {
        current_output_name.push(label_value);
      }
      if (current_output_name.length > 0) {
        this.output_nameWidget.set('value', current_output_name.join(' '));
      }
      this.checkParameterRequiredFields();
    },

    onSuggestNameChange: function (val) {
      this._autoTaxSet = true;
      var tax_id = this.scientific_nameWidget.get('value');
      if (tax_id) {
        this.tax_idWidget.set('displayedValue', tax_id);
        this.tax_idWidget.set('value', tax_id);
        this.changeCode(this.scientific_nameWidget.get('item'));
        this.updateOutputName();
      }
      this._autoNameSet = false;
    },

    onOutputPathChange: function (val) {
      this.inherited(arguments);
      this.checkParameterRequiredFields();
    },

    checkParameterRequiredFields: function () {
      if (this.scientific_nameWidget.get('item') && this.myLabelWidget.get('value')
         && this.output_path.get('value') && this.output_nameWidget.get('displayedValue') ) {
        this.validate();
      }
      else {
        if (this.submitButton) { this.submitButton.set('disabled', true); }
      }
    },

    setContigsFile: function () {
      this.checkParameterRequiredFields();
    },

    onRecipeChange: function () {
      if (this.recipe.value == 'canu') {
        this.genome_size_block.style.display = 'block';
        this.checkParameterRequiredFields();
      }
      else {
        this.genome_size_block.style.display = 'none';
        this.checkParameterRequiredFields();
      }
    },

    onStartWithChange: function () {
      if (this.startWithRead.checked == true) {
        this.readTable.style.display = 'block';
        this.assemblyStrategy.style.display = 'block';
        this.assembly_additional_parameters_block.style.display = 'block';
        this.annotationFileBox.style.display = 'none';
        this.numlibs.constraints.min = 1;
        this.contigsFile.reset();
        this.contigsFile.set('required', false);
        this.checkParameterRequiredFields();
      }
      if (this.startWithContigs.checked == true) {
        this.readTable.style.display = 'none';
        this.assemblyStrategy.style.display = 'none';
        this.genome_size_block.style.display = 'none';
        this.assembly_additional_parameters_block.style.display = 'none';
        this.annotationFileBox.style.display = 'block';
        this.numlibs.constraints.min = 0;
        this.contigsFile.set('required', true);
        this.checkParameterRequiredFields();
      }
    }
  });
});

redpajama_set_name: RedPajamaGithub


text:
UK lenders return to market with mortgage rates near 6%
By admin On Oct 4, 2022
Leading British banks are re-entering the mortgage market with interest rates of almost 6 per cent, after halting new fixed-rate home loans last week following turbulence in the UK government bond market.
Barclays, Skipton Building Society, NatWest, Virgin Money and Nationwide are among the lenders to increase rates on new mortgage deals in the wake of chancellor Kwasi Kwarteng's "mini" Budget just over a week ago, which sent gilt yields soaring.
The average rate on two-year fixed deals jumped to 5.75 per cent on Monday, up from 4.74 per cent on the day of Kwarteng's announcement on September 23, according to data provider Moneyfacts.
The increase means rates on two-year fixed deals are at their highest level since December 2008, when rates were 5.80 per cent.
Banks were forced to temporarily withdraw mortgages for new customers last week because of the sharp rise in gilt yields, which they use to price fixed-rate mortgages.
Many banks are still waiting for markets to settle before returning with new home loans, while some have returned with higher rates.
"We have had another busy day of rate hikes with some of the biggest lenders increasing their prices and pulling their cheapest deals," said Aaron Strutt, of broker Trinity Financial. "We were hoping fixes would stabilise but for the moment they are heading up."
There were 2,262 mortgage products available to UK borrowers on Monday, down from 3,961 on the day of the "mini" Budget, according to Moneyfacts, after lenders rushed to withdraw deals from the market.
Barclays told brokers late on Monday that it would increase rates across certain residential and buy-to-let deals from Tuesday.
Skipton, which withdrew mortgages for new customers last week, said it would return to the market with a new five-year fixed range on Tuesday at higher rates, including a product for people with only a 5 per cent deposit.
NatWest, which was last week the only lender that continued to offer new mortgages at previous rates, on Monday made a series of rate increases across residential and buy-to-let products.
The bank said it had increased rates by almost 1.5 percentage points on some of its remortgage deals, fuelling concerns that borrowers face steep cost increases when their fixed-term mortgages expire.
According to the Bank of England, more than 2mn borrowers with fixed-term products will need to remortgage between now and the end of 2024.
Ray Boulger, of broker John Charcol, said that on Monday the best fixed-rate deal over two years with a 40 per cent deposit was 4.56 per cent offered by Halifax. This compares with a best rate of 3.57 per cent from Skipton three weeks ago.
In another sign of the turbulence in bond markets, some lenders are now charging higher interest rates for two-year fixes than those for five- or even 10-year mortgages, as wholesale borrowing is now cheaper for longer rather than shorter-dated funding.
"NatWest's new low-deposit, five-year, first-time-buyer rates are actually better than its 40 per cent two-year fixes, showing just how crazy the market is," said Strutt.
The lenders' decision to raise rates was likely to put the brakes on property sales, said Dominic Agace, chief executive of estate agency Winkworth.
"It's what happens every time there is a step up in mortgage rates," said Agace. The slowdown would be particularly marked where sales peaked during the pandemic, such as in the market for large country homes, he added.
Additional reporting by Siddharth Venkataramakrishnan
The global companies sucked into Russia's draft
Hurricane Ian Reminds Us Of 3 Retirement Risks Few Consider
When You Need To Update Your Estate Plan: You're Probably Past…
The 'Sammy Hagar' theory of economics
How much over asking price should I offer on a house?


SWP SACROC EOR Project United States is located at Please Select. Location coordinates are: Latitude= 32.734752, Longitude= -100.947882. This infrastructure is of TYPE CO2_Storage and CATEGORY Fuels and Resources. . It is operated by New Mexico Institute of Mining and Technology.


text:
Ḩefz̧ābād kan syfta på följande platser:

Iran

 Ḩefz̧ābād (ort i Nordkhorasan),
 Ḩefz̧ābād (ort i Ardabil),

Robotskapade Iranförgreningar

redpajama_set_name: RedPajamaWikipedia


Clone / Pull / Update the code for your application locally. I do almost all of my development on remote servers so it's rare I have the latest of anything on my hard drive. git clone / git pull is a must to make this happen. If you don't have your SCM tool installed (like git, svn, hg. etc) you need to do this ASAP.
Bundle. Bundler helps maintain the dependencies in your applications plugins / libraries but to do that is usually needs to download libraries from the internet unless you have them installed locally. If you're short on time (i.e. waiting to board the airplane) I would run bundle install from the app that has the most libraries associated with it. Bundler will reuse things that are already installed and if you're lucky many of your applications share common libraries. The more wifi time you have the more applications you should bundle before you try and do it offline.
Try and find any useful wiki / documentation pages that aren't generated from source code. These pages are likely going to include examples of implementations and features not associated with a particularly function. In my case, I know there is a wiki page on Github that describes a "best approach" to the problem I'm having right now, but I can't get to that in the airplane. I tend to have the most trouble with jQuery-based documentation… when ever I need to know the syntax for a function like $.ajax I just google it. Not possible on an airplane. Instead of waiting til I land to quickly fire up wifi before dashing to my connecting flight (that's my current plan), I could have been smart and downloaded the documentation first. http://www.jqapi.com/ or http://docs.jquery.com/Alternative_Resources may be worth exploring.
Don't worry about the framework / gem documentation, at least not the function-by-function style documentation that is generated automatically. You can regenerate it on your own if you need to. The Ruby on Rails documentation can be generated by running `rake doc:rails` from your application directory. You'll find the output in your apps doc/api directory. If you need documentation for a gem your system might already have it. Run `gem server` to start a server with information about your gems. If the rdoc link isn't working for the gem you're interested in fear not, you generate it most of the time using `gem rdoc gemname`. I needed the documentation for CanCan so I ran `gem rdoc cancan` and presto, the server was able to point me to some moderately useful information.
Hack it if you have to. If you forget step 3 and step 4 didn't help, you can probably write some really sloppy code to do what you're trying to. If you can't (or don't want to) write some junky code perhaps you can simulate it. For example, I don't know the exact call I need to figure out if I want to give the user access or not, but knowing that it will return true or false lets me very easily simulate what will happen in the rest of my application.
Write lots of comments. You're flying in an airplane. For all you know the baby crying behind you could be effecting your normal coding practices, it's not going to be very easy to get back in the same mindset again so you should document what you're doing extensively. This applies extra if you have to use step 5.
Best of luck with your offline development, and safe travels.
Looking at the current production site the average response time is 16ms, with 8ms of database work and 7ms of rendering time. I ran numbers on the beta and saw the same query was averaging around 63ms, with the split 26ms database and .17ms rendering (No clue where the missing milliseconds are). I was very very sad to see things were going close to 4x slower, I thought Rails 3 was suppose to make my world better!
Turns out it can, you just have to work a little bit harder. What I almost forget to mention was that the current Rails-2 production system uses a much smaller dataset, the table with all the shuttle positions is archived and wiped clean every night, so at worst (like 11pm) the queries are hitting a few thousand rows. On the other hand, my research into route identification and arrival prediction requires a historical dataset so I didn't build any support into the new Rails 3 code to throw that data aside. Maybe my code wasn't so bad after all, but it was still measurable slower.
I switched the database over to my development server which runs orders of magnitude slower than the production box (all production / beta code is running on the same dedicated shuttle tracking production server). I started by taking a look at the database queries my code was generating and none of them seemed too outrageous. The first query finds all the shuttles that have the enabled flag true, SELECT vehicles.* FROM vehicles WHERE vehicles.enabled = true, and was only taking 1ms, nothing significant at all. The real slow guy is the query, executed one for each shuttle, to grab the latest position SELECT "updates".* FROM "updates" WHERE ("updates".vehicle_id = 1) ORDER BY timestamp DESC LIMIT 1. On the development box, running this query for just one shuttle (like it looks previously) was taking 1100ms, multiply that by 8 shuttles and you have >8 seconds of dedicated thinking time. With the update interval of 4 seconds, the development server would probably implode as a result!
I figure there are 2 parameters that the database cares about when it's running the latest position query from above: vehicle_id and timestamp. To figure out the best indexes to add I set out and tested my options, running each index independently, together, and them combined (in both orders).
The first row in represents the indexes added to the table, the vehicle_id + timestamp represents having two independent indexes (combining the first two test) and the comma-separated index represented a combined key.
The data showed, pretty clearly, that the combined key on [vehicle_id, timestamp] was the best index to add to the table. The results came in faster than any other index and (as a nice bonus) the index size wasn't as large some of those that placed emphasis on the timestamp over the vehicle_id. Given the SQL query being executed, this makes sense. The query first needs to scope what vehicle to look for and then perform the timestamp operation.
I committed code to add the indexes to the updates table and updated the beta appropriately. I posted a new link on Twitter asking people to help out load / stress test the server and it was re-posted on Facebook a bit. I wanted to quickly generate enough data to compare with the previous beta run and the production log to see if the indexes signifnicantly helped everyone's experience or it just a fluke on my development service.
Below you'll find the numbers, after expanding out some of request-log-analyzer results, that show how much faster the indexes actually made things.
At first glance I wasn't super thrilled that the new code, with indexes, was only 4ms faster than the existing code… but I guess another way to frame that is a 25% improvement which is fairly substantial and that same change (closer to 22%) was carried over the upper limit of the 95 percentile range of requests.
I do find myself wishing request-log-analyzer could run it's computations on the millisecond level, perhaps I'll look into that change if I'm feeling extra adventurous sometime soon.
While I look forward to having an expanded dataset in the production system for cool things like route identification and estimated arrival times, until those features are public you can look forward to saving around 4ms every time the shuttles move (or don't move) on your display!
Over the past 6 months or so I've been spearheading the re-write of RPI's Shuttle Tracking system into something less RPI-specific to make it useful to other organizations. Part of this has been small semantic changes like removing RPI-specific words, location references (like the hard coded map center) and CAS-based authentication, but on a much larger level the application was restructured to do a lot more.
Both old and new systems store the same data (vehicles, vehicle positions, routes, and stops along the routes) but you no longer have to directly manipulate the database to hide a stop from the map and you don't have to understand how to build a KML file to change the route around anymore. Additionally, the new system feel much less "hacky" if that makes any sense, things are where they should be (for the most part) and there's actually some back end pages worth showing off; we'll be able to iterate and release new features much faster.
I am always impressed when an interface get's polished, but I'm rarely the one to do it (Thanks Reilly!)… what I can take credit for is the switch to Ruby on Rails 3. Flagship Geo was a primary driver behind this, Rails 3 was necessary to pull in all those resources like the route and stop editors, but Rails 3 should also provide some performance enhancements.
The server has also been upgraded to include Ruby 1.9.2 via RVM because I think that makes it harder to break things. When the site goes into production we'll be serving using Passenger 3 to, in theory, speed up our web server end of the pipe.
The interface for editing routes.
Thinking back, this the probably the quick and easy technique I picked up from my PHP development projects. I could hand-code and debug some XML faster than I could find a suitable library, install it, and figure out how to work it. Sometimes it's just easier to do things the hard way.
As a rule of thumb, I think the hard way in PHP never translates well into Ruby on Rails.
Yesterday I was struggling to cleanly generate XML in Rails 3 because of the new default sanitation. Using Builder was easy enough to generate the right XML structure for my KML file, but getting it to output was a challenge. All of my < tags were getting replaced with < and such, and the raw parameter (<%=raw foo %>) wasn't cooperating.
I ended up discovering that I could rename my file from show.kml.erb to show.kml.builder, and I wouldn't have to mess around with any escaping or erb syntax at all. You can check out the code I used in this commit. It might be just me, but I always struggle to find the appropriate documentation for these little nuances in Rails. There is tons of code showing how to use Builder to build XML documents, but not one of them mentioned what to name your file.
This technique definitely took me longer than a quick pass through manually plugging in the string would have, but its a lot cleaner. I don't have to worry about escaping or generating valid XML, and if performance is an issue I can install a new XML builder to speed things up.
I just bumped Flagship Geo to use Rails 3 Beta 4 (commit), luckily everything seems to still be working when I run my test suite. Installing the new version of Rails is pretty easy, you just have to run `gem install rails –pre`. You might want to sudo if you keep your gems system wide.
Also, bundler has been getting on my nerves. When I upgraded rails, bundler was updated to 0.9.26 which is very confused about its gem locations. From the command line, everything works great. I can rake test, ./script/rails console, and do all of that great stuff but when I load my application up in the browser half of my gems can't be found. I needed to sudo gem install them to manually make them available system-wide, doing just `bundle install` would install them locally which was good enough for CLI work but didn't cut it for Passenger. I believe this might be fixed in bundler 0.10… due out ASAP?
Otherwise, everything is working great. I look forward to the Rails 3 RC upgrade later in the week… hopefully the upgrade won't be much harder.


Discussion in 'iOS 7' started by Last iOS 5 user, Jun 18, 2014.
Remember when Apple was sued for pushing iOS update downloads without the owner's permission to iOS 6 devices? Would this happen to iOS 5 devices too? right now when I charge my iPhone 4 I make myself do the extra step to turn off the Wifi (and forget it too just for good measure). Any iOS 5 users who have this happen?
iOS 5, 6, and 7 devices will still download the latest iOS update for their device when connected to a power source and a compatible data connection.
Why would you want to keep iOS 5 ?
Google Maps, Youtube, general look (don't like iOS 6's looks and def. not 7 or 8) on any device.
If on an iPhone 4S, Susan Bennett.
I have an iPhone 4S which I got with iOS 7 and will push to its latest version but anything for me that runs iOS 4 or 5 will stay. It's just how I am.
Guess I have been doing the right thing, I hate when the new updates take my space and force me to upgrade to something I find slowing, stupidlooking, and not suitable for me!
iOS 5 was the peak, all the goods of iOS 6 but with the glossy menu bars and bold weather.
iOS 6 was still good but not as nice as iOS 5 and not nearly at the same level of disgust as iOS 7.
Once my iOS 6 iPhone 4 force-upgraded to iOS 7 it was terrible... of which I later tried a 3GS on iOS 4.1 and liked it better than any other (visuals are nearly identical between iOS 4 and 5). I finally managed to hack-downgrade my iP4 to iOS 6 and sure enough, it downloaded the iOS 7 update without my permission. You're doing well.
IOS 5 was better than IOS 6 in my opinion - it was the peak of "classic" IOS in my opinion, not just because of the maps thing but because the overall design was more cohesive. IOS 6 was a bit of a mess and I never understood why it was held up as some kind of design triumph by some when 7 came out.
7 IMHO is better than both of them, structurally and design wise.
I couldn't agree more. Although at this point it doesn't really matter, IOS 7 design elements are here to stay.


text:
Alesha Dixon hits BGT Golden Buzzer for Entity Allstars
Britain's Got Talent judge backs dance troupe Entity Allstars - and there's a familiar face for X Factor fans
By Emma Daly
Saturday, 9th May 2015 at 8:15 pm
Alesha Dixon hit her Golden Buzzer on this week's Britain's Got Talent, meaning dance troupe Entity Allstars will go straight through to this year's live semi-final shows.
The 20-strong team of dancers has a familiar face among them: Lewis Platt. His sister Lauren Platt placed fourth in last year's series of The X Factor, where he joined her on stage as a backing dancer.
Cowell himself told Lewis to audition for this year's BGT – advice that certainly seems to have paid off.
The group cleverly included a Mis-Teeq track (Alesha Dixon's former band) among the medley of songs. Not that she noticed…
OK, she was so excited she defied RadioTimes.com's screen-grabbing skills.
The band, who hail from Essex and are aged 10 to 16, will appear on the live semi-final shows later this month in a bid to perform at this year's Royal Variety Show.
Britain's Got Talent continues next Saturday at 8:00pm on ITV
Relive blunder-filled comedy trampoline act from this week's Britain's Got Talent
Decoding Simon Cowell's facial expressions
Lauren Platt
Britain's Got Talent: See Lettice Rowbotham perform with Olly Murs
Dancing dog act Jules and Matisse win Britain's Got Talent 2015
All about The X Factor
Should Old Men Grooving have earned a Golden Buzzer on BGT?
Britain's Got Talent: Old Men Grooving's guide to dad dancing


text:
About the Dell Cheetah Centre
The Cheetahs
Brown Hyena Research
Hyena Facts
Vaal Eden and The Vredefort Dome
Cheetah Visits and Runs
Adaptations to Speed
Diet and Hunting Techniques
Mating and Cubs
Volunteering at The Centre
Pre-Departure Info
Code of Conduct and Indemnity Form
Off Day Activities
Cheetahs have many adaptations which enable them to run at such extraordinary speeds, reaching up to 120 kilometre per hour. However, they are not endurance runners and can only maintain those speeds for four to five hundred metres before they have to stop and cool down in order to prevent over-heating. Their body temperature rises and breathing becomes rapid.
Their body is narrow and lightweight with long, slender feet and legs, and specialised muscles which act simultaneously for high acceleration, allowing greater swing to the limbs. Their hip and shoulder girdles swivel on a flexible spine that curves up and down, as the limbs are alternately bunched up and then extended when running, giving greater reach to the limbs. Their strides can be between 7 and 8 metres apart. They also have semi-retractable claws which grip the ground, giving them traction whilst they run.
Their long, muscular tail acts as a stabiliser or rudder for balance to counteract their body weight, preventing them from rolling over and spinning out in quick, fast turns during a high-speed chase. Cheetahs can turn a 90-degree angle at 80 km/h. The tail also helps them to steer, acts as a handbrake and as a fly swat.
They have a very deep ribcage which contains a powerful heart, oversized liver and large strong arteries in order to carry oxygenated blood to all parts of the body whilst they are running. A pregnant female carries her cubs up towards the ribcage, which offers the cubs extra protection and reduces the weight around her stomach, allowing her to hunt right up until she gives birth.
Cheetahs have small heads, with flat faces and a reduced muzzle length, enabling their large eyes to be positioned for maximum binocular vision, and they have enlarged nostrils and extensive air-filled sinuses which allow them to quickly get their breath back after running.
General & Booking Enquiries
Estelle Kemp: +27 (0) 82 691 5537
Pieter Kemp: +27 (0) 73 148 6245
Email: cheetah(xmsAt)parys(xmsDot)co(xmsDot)za
Volunteering Enquiries
Estelle Kemp: cheetah(xmsAt)parys(xmsDot)co(xmsDot)za
Registered Non-Profit Organisation: 2009/015677/08
Are you interested in volunteering at the Dell Cheetah Centre and helping us save the cheetah?
Our volunteer programme is designed to introduce you to the fascinating wildlife Africa has to offer as well as the incredible cheetah, and to work closely in all aspects of reserve management.
Find out how you can help


The Loeries has released its annual Official Rankings which provide a comprehensive overview of the performance across the advertising and brand communications industry throughout Africa and the Middle East based on performance at the 2018 Loerie Awards, held in Durban in August.
This year, for the first time, the Loeries included points for Finalists in calculating its Official Rankings. In the past, points were only awarded for Bronze winners and above.
"While there can be many ways of analysing any competition, we have provided a thorough and fair process to accurately report on the results of the awards," says Loeries CEO Andrew Human who believes that the inclusion of Finalists has had a positive impact on small agencies and countries in the region by giving them recognition for their achievements.
This year Sanlam is the top brand, having won 16 Loeries, including a Grand Prix. Chicken Licken and Kimberly-Clark take second and third place respectively.
Mariska Oosthuizen, Head of Brand at Sanlam is the top brand representative, followed by her colleague Kelly Driscoll. John Clark and Morné van Emmenes of Kimberly-Clark ranked third and fourth and Chantal Sombonos van Tonder from Chicken Licken, placed fifth.
The top three Agencies are: Joe Public United, Impact BBDO Dubai and King James Group; and the top three Regional Agency Groups are: TBWA\, Ogilvy EMEA and Joe Public United.
From the region excluding South Africa, the top three places go to Impact BBDO Dubai, TBWA\RAAD in the UAE and TBWA\Istanbul in Turkey. Other countries included in the top 20 regional agency rankings are: Angola, Israel, Kenya, Lebanon, Namibia, Nigeria, Saudi Arabia and Zimbabwe.
Joe Public United has taken the top position in the large agency category, while King James II has the highest ranking among medium-sized agencies, and Utopia tops the small agency table.
The top three ranked Chief Creative Officers for 2018 are Joe Public United's Pepe Marais and Xolisa Dyeshana in joint first place, followed by Pete Case of Ogilvy Johannesburg who is ranked third. King James Group tops the table for Executive Creative Directors with Devin Kennedy and Dan Pinch ranking first and second respectively, followed by Gordon Ray from M&C Saatchi Abel in the third spot.
AAA School of Advertising is the top educational institution. The Open Window, Vega, North-West University and the University of Johannesburg follow to make up the top five in the category.
Note: The OVERALL ranking includes agencies from across the region – Africa & the Middle East – as well as international agencies that produced work to be flighted within the region.
Note: The Regional Agency Group ranking is for the group networks across Africa and the Middle East.
The full rankings, available on loeries.com, includes more tables on specialist agencies, production companies and individual credits.
The Loeries has been rewarding creativity for 40 years. As Africa and the Middle East's premier award that recognises, rewards, inspires and fosters creative excellence in the advertising and brand communication industry, winning a Loerie is the highest accolade for creativity and innovation across our region. The Loeries, a proudly not-for-profit company, promotes and supports creativity by helping marketers, agencies and consumers appreciate the value of fresh thinking, innovative ideas and outstanding execution.
Between 10and5, Bizcommunity.com, B&W Report, Brand Communicator Nigeria, Book of Swag, Business Insider by Pulse, Campaign Middle East, Creative Feel, Design Times, Film & Event Media, Goliath and Goliath, iDidTht.com, MarkLives.com, Marketing Edge Nigeria, Marketing Africa Kenya, Media Update, The Redzone.


We create brands that are desirable and memorable.
Vira Verna Advertising Agency | People tend to follow what excites them and brings them peace and clarity. Our skilled and resourceful members, at Vira Verna International Advertising Agency, are specialized to bring wonders into brands and businesses that deserve praising and persuading by customers. Our film directors will ensure our clients to produce and screen their teasers and advertising videos in their best intention. Our well-equipped sound and music studio facilitates high quality production that excels quality of brands. Our writers enjoy writing genius history for brands that speaks of their remarkable stories. With the skills of our designers and programmers, we deliver presentable websites that are windows to many grand businesses. Our marketing strategists utilize the most updated methods and tools to showcase businesses and brands across all platforms.
Unlike the old saying, people judge the books by its cover. In our modern days, costumers tend to judge, analyze and choose products and services by how compelling and motivating the products and services are. While a brand is an embodiment of a designed idea, it also needs physical and tangible characterizations that customers can connect with through all their senses. That is why our graphic designers at Vira Verna Advertising Agency will discover and design astonishing and relatable logos and graphic designs to customers can positively respond to. In special cases, brands use the art of character design and bring the brands to life. Also through the power of music production, the brands gain their own distinct and impactful voice to communicate with the customers. The websites are the modern means on interaction between brands and customers. Our capable team at Vira Verna Advertising Agency promise businesses to deliver satisfying and successful brand design and branding strategy services.
Our experts in Vira Verna Advertising Agency apply various advertising strategies to help with one's brand awareness. Based on the brand's goals, our experts decide the most effective and logical campaigns in order to reach the most target customers (Marketing strategies) and to find the right and motivational means of communication with the customers (Advertising strategies). Media advertisement is an essential tool to create Brand awareness for businesses in different platforms. Media advertisement also focuses on directing and inviting customers with different mindsets, tastes and preferences to familiarize with a specific brand and eventually leads them to trust the brand. Our team at Vira verna Advertising Agency provide and uses different types of advertising, such as producing television and radio teasers, motion graphics, event based campaigns and digital campaigns.


OVT is an Austrian logistics company headquartered in Schwechat, near by Vienna, that offers state-of-the-art complete transport and logistics services, for over 20 years. We are a family business, worldwide connected, with a unique dynamics, that has a personal approach to the needs of each and every partner and offers professional solutions aimed at building strong and lasting business relationships over time. We are inspired by delivering quality services, and we are conveying all our actions to an unique purpose: our customer satisfaction.
Fastest and safest solution on the road!
Express deliveries or Just-in-Time (JIT) / Just-in-Sequence (JIS) inventory strategy are our strengths, even though they are challenging applications that require flexibility, constant quality services and efficiency in deliveries. We master the ability to deliver on a JIT/ JIS basis as main feature for our competitiveness. We provide 24/7 Real Time Tracking (RTT) as well as 100% availability to respond to our client's needs.
Multitude of on demand flexible solutions!
We work together with our partners, clients, and across our operations, to deliver customized services based on the specific needs of each and every client.
We provide effective connections to the system of movement across Europe and worldwide, with focus on efficient logistics solutions for our partners.
We respect time value, our team of professionals takes seriously every action needed to observe of mandatory deadlines and timely deliver all our shipments.
Our team of professionals provide flexible and efficient logistics solutions for any type of goods and for any destination on domestic and international routes at competitive rates, and optimal transit times so that your shipments shall arrive quickly and safe at the final destination.
Whether you need a partial or complete charter, door-to-door deliveries, transport of heavy or dangerous goods, the provision of transport containers, the provision of high quality goods and customs checks – all these are part of our service portfolio. All our services combined makes us to the best choice of your Full Service Provider / 3PL.
Time Value Traditional transport in accordance to modern standards.
OVT provides domestic and international road transport in groupage, LTL, FTL, throughout Europe and beyond, as per our partner's needs. Our attention is focused on all aspects of the transport of goods as they are carried out under the most rigorous control, thus ensuring safe delivery and within deadlines. We carry out transports with a most modern trucks fleet, company owned or in partnership, - all with low emissions - managing therefore to operate responsible logistics services and protecting the environment.
We provide national and international rail transport for a wide variety of goods, offering the best transportation solution for our clients: single wagons, wagon groups or full trains, as per our client's needs.
Through our global network, our experience gained over the years and close collaboration with leading shipping companies, we provide safe and timely transportation services for our clients, on all seven seas.
Quickly, safe and on time anywhere, at any destination, worldwide.
If you have a tight deadline and you need service transportation for high quality goods, we can provide you with our Air freight solutions. By air transport, your goods will arrive quickly, safe and on time anywhere, at any destination, worldwide.
We have acquired valuable knowledge on the high precision and superior quality processes in automotive logistics, so that we will offer the best solutions for our client's needs.
Our experience in carefully handling, storing and managing high-tech goods ensures that we comply with a high degree of safety during all our logistics operations.
From the smallest spare part to the heaviest industrial machine, we transport everything safely from point A to point B. Our materials are shipped promptly and correctly.
We are specialised in managing seasonal fluctuations and we strictly observe expiration dates, hygiene and all cleanliness norms in order to deliver best quality services.
OVT is nowadays is a world-class sustainable logistics company ensuring integrated logistics services for the following fields: Automotive, Electronics, Industrial, Beverage, Health Care, Paper Industry, High Tech, Agriculture, Fashion and project logistics.
Through our own fleet and in partnerships we provide complete solutions for Multimodal, Distribution, Warehousing, Road transport, and providing future-oriented individualized solutions at the highest quality standards.
We are committed to developing sustainable business practices that meet the needs of the present without compromising the welfare of future generations.
Effective care of the environment, saving resources and avoiding harmful substances are a component of our entrepreneurship policy.
ISO 9001 Quality Management System; ISO 14001 Environmental Management System; OHSAS 18001 Occupational Health and Safety Management System.
© ovtlogistics.com. All rights reserved.


1) In a small food processor, add the chocolate chips and pulse until they are finely chopped and resemble coarse sand, set aside.
2) In a large bowl, using a spatula, cream together the butter and both kinds of sugar, add the egg and vanilla and mix until combined.
3) Add the flour, baking soda, salt and chocolate mixture and mix everything together.
4) Wrap the cookie dough in plastic wrap and pop it in the fridge for a couple hours.
5) Preheat the oven to 375 degrees, take a couple of muffin tins, flip them upside down and spray them with non stick spray.
6) Roll out the dough out on a floured surface, take a 4" biscuit cutter or small bowl and cut out little disks (re-roll the scraps and keep cutting) place each one over the muffin cup (fight the urge to cut them too big because they will expand as they bake, trust me) making sure to not put them all next to each other because they will all bake together otherwise.
7) Bake them for 12 to 15 minutes until golden brown then allow them to cool before serving.


Amazon's Kindle ebooks have revolutionised the way that people can read, write and publish books. The process has been democratised, meaning that large teams of proofreaders, illustrators and designers have been replaced by a single author doing everything themselves - including designing the book cover. But the results aren't always pretty, as the Tumblr blog Kindle Cover Disasters proves. Can you judge a book by its cover? Let's hope not.


It was difficult to communicate with people of Hu Xiang. (they had the reputation of being vulgar.) A boy from Hu Xiang asked to meet Confucius, and pupils frowned. Confucius said, "The boy came to improve himself, not to corrupt. Why can't I teach him? I do believe in people's pure heart when they purified their heart. But it depends on his efforts if he can become a good person or not after he goes back.


text:
Q: shipping UnityEditor in StreamingAssets for StandAlone use I know why I get an error message when trying to build an app that uses the UnityEditor directive and I know how to resolve the err msg:
#if UNITY_EDITOR
using UnityEditor;
#endif

But I am wondering how, for example, the radio button functionality that I need can be included in a standalone build then?
If I include the same editor tags and exclude that part of my code to be executed in standalone, I cannot have radio buttons...
The following code implements what I need:
int  selGridInt;
string[]  selStrings = { "Male", "Female", "Other" };

case DataFieldType.myRadioButton:
  GUILayout.BeginHorizontal( displayStyle1 );
  selGridInt = GUILayout.SelectionGrid( selGridInt, selStrings, 3, EditorStyles.radioButton );
  GUILayout.EndHorizontal();
  userSelection[i] = selStrings[ selGridInt ];
break;

I cannot simply move my script into another folder. How do I resolve this?
I thought maybe I can put the Editor folder into the StreamingAssets folder to ship it with the standalone, and then try something like:
#if UNITY_EDITOR
 case DataFieldType.myRadioButton:
   GUILayout.BeginHorizontal( displayStyle1 );
   selGridInt = GUILayout.SelectionGrid( selGridInt, selStrings, 3, EditorStyles.radioButton );
   GUILayout.EndHorizontal();
   userSelection[i] = selStrings[ selGridInt ];
 break;
#elif UNITY_STANDALONE
 string standalonePath = Application.streamingAssetsPath;
 string editorPath = standaloneExperimentPath + Path.DirectorySeparatorChar + "Editor";

But now I need to know how to refer to this script and what to put in my standalone code snippet?
During my search for an answer, I also came across Resources.LoadAll and T[] LoadAll(string path) in Unity manual, but again the same problem that I don't know how to use this facility in my standalone code. For example, what type is T if I just need to use the UnityEditor directive in order to have a radio button function?

A: Even if you manage to use UnityEditor namespace in the build that with some hack, I wouldn't envy the people who would maintain this project. Of course, you can include executable code in the asset bundles, theoretically (if you don't want iOS), but what you're trying to achieve can be done much, much easier.
If you want to implement radio buttons, you should be aware that Unity released a new UI some time ago, and I wouldn't advice using GUI or GUILayout classes for anything except editor scripts and quick debug stuff. You can find more information about the new UI system here.

A: It looks like the only "Editor" functionality you are using is the EditorStyles.radioButton so in order to use this you would need to create the GUIStyle that EditorStyles.radioButton uses.
Unity has an asset you can download from the asset store that has all there default skin textures and a skin you can access and see how it is set up as well
https://www.assetstore.unity3d.com/en/#!/content/5105
That being said you should never use "UnityEditor" code in a release build as this is not supported and probably will never work.  This code is designed to specifically work with the editor and not with anything that is built with the editor.


Heat 1/2 tbsp of the olive oil on medium/high heat in a non stick pan and add the shiso leaves and rabe flowers. Season with salt and pepper, add the red chili flakes and reduce heat to medium stirring to prevent burning while it cooks down for 8 minutes.
Plate the greens and add the remaining olive oil to the pan, crack open the egg on medium heat and fry it sunny side up shutting it after about 3 minutes and letting it finish cooking in the hot pan.
Place the parmesan on top of the greens, add scallion micro greens. Gently fold half of the egg white under itself as you remove it from the pan with a spoon and place it 1/2 on the greens with the yellow touching the greens. When you dig in the yolk will spill over the greens and parmesan creating a creamy texture. Optional to sprinkle Gomasio seasoning on top of everything. Serve Kimchi alongside it and toasted bread.
I am not vegan, just happen to have some recipes that fall in that category. I could never give up eggs. It must have not taken much creativity for the marketing teams to come up with the "incredible egg" slogan to promote the industry, because they are just that. Being one of the most nutrient dense and protein packed foods out there, they are a cooks dream for transforming just about any dish. From baking, to sauces, to thickening, to fluffy meringue, and pillowy soufflés there is no dish or cuisine that does not use the egg. And, if that wasn't enough, they are portable! Hello my perfect little snack. Though they can be transformed into just about anything, sometimes they are just best in the most simple state and there are about 10 ways to make an egg. Served over a bed of greens, this egg gets quickly fried with the white half fold under itself so the yolk can do its thing and cascade over the Parmesan and greens to create a creamy texture. Make sure you get local organic farm fresh eggs if you want that beautiful yellow orange yolk!


text:
Q: Razor is emitting the wrong value into a hidden field I am dealing with some aberrant behavior in with the razor engine. I have the following code in a my razor view:
@using (Html.BeginForm("AddCabinetItem", "Builder"))
{
    @Html.AntiForgeryToken()

    @Html.HiddenFor(model => model.ID)
    @Html.HiddenFor(model => model.LibraryItemID)
    ...

The value of model is as follows:
Model = new CabinetItem {
    ID = 0,
    LibraryItemID = 155,
    ...
}

I verified that these values are correct in debug on the razor view itself. The HTML that is emitted is wrong:
<input data-val="true" ... id="ID" name="ID" type="hidden" value="155">
<input data-val="true" ... id="LibraryItemID" name="LibraryItemID" type="hidden" value="155">

Razor emitted 155 into both hidden fields. What is going on here? I'm not doing any in javascript with these fields. Is this a bug or am I doing something wrong? I'm working with MVC 5 in Visual Studio 2013.
Here is the definition for CabinetItem
public abstract class JobItem : IEquatable<JobItem>
{
    protected JobItem()
    {

    }

    protected JobItem(LibraryItem a_item)
    {
        #region Argument Validation

        if (a_item == null)
            throw new ArgumentNullException("a_item");

        #endregion

        LibraryItemID = a_item.WizardLibraryItemId;
        Name = a_item.Name;

        Quantity = 1;
    }

    protected JobItem(JobItem a_other)
    {
        #region Argument Validation

        if (a_other == null)
            throw new ArgumentNullException("a_other");

        #endregion

        ID = a_other.ID;
        LibraryItemID = a_other.LibraryItemID;
        Name = a_other.Name;

        Quantity = a_other.Quantity;
    }

    public int ID { get; set; }

    public int LibraryItemID { get; set; }

    public string Name { get; set; }

    [Required]
    [Display(ResourceType = typeof(CutReady.Web.Languages.Builder.Builder), Name = "QuantityLabel")]
    [Range(1, Int32.MaxValue, ErrorMessageResourceType = typeof(CutReady.Web.Languages.Builder.Builder), ErrorMessageResourceName = "QuantityRangeError")]
    public int Quantity { get; set; }

    public abstract JobItem Clone();

    public override bool Equals(object a_obj)
    {
        if (ReferenceEquals(null, a_obj))
            return false;

        if (ReferenceEquals(this, a_obj))
            return true;

        if (a_obj.GetType() != typeof (JobItem))
            return false;

        return Equals((JobItem) a_obj);
    }

    public virtual bool Equals(JobItem a_other)
    {
        if (ReferenceEquals(null, a_other))
            return false;

        if (ReferenceEquals(this, a_other))
            return true;

        return LibraryItemID == a_other.LibraryItemID;
    }

    public override int GetHashCode()
    {
        return LibraryItemID;
    }

}

public class CabinetItem : JobItem
{
    public CabinetItem()
    {

    }

    public CabinetItem(LibraryItem a_item)
        : base (a_item)
    {
        #region Argument Validation

        if (a_item == null)
            throw new ArgumentNullException("a_item");

        #endregion

        ItemWidth = a_item.ItemWidth;
        ItemDepth = a_item.ItemDepth;
        ItemHeight = a_item.ItemHeight;
        ItemWidthLock = new DimensionLock(a_item.ItemMinWidth, a_item.ItemMaxWidth);
        ItemHeightLock = new DimensionLock(a_item.ItemMinHeight, a_item.ItemMaxHeight);
        ItemDepthLock = new DimensionLock(a_item.ItemMinDepth, a_item.ItemMaxDepth);
    }

    public CabinetItem(CabinetItem a_other)
        : base(a_other)
    {
        #region Argument Validation

        if (a_other == null)
            throw new ArgumentNullException("a_cabinet");

        #endregion

        ItemWidth = a_other.ItemWidth;
        ItemDepth = a_other.ItemDepth;
        ItemHeight = a_other.ItemHeight;
        ItemWidthLock = new DimensionLock(a_other.ItemWidthLock.Minimum, a_other.ItemWidthLock.Maximum);
        ItemHeightLock = new DimensionLock(a_other.ItemHeightLock.Minimum, a_other.ItemHeightLock.Maximum);
        ItemDepthLock = new DimensionLock(a_other.ItemDepthLock.Minimum, a_other.ItemDepthLock.Maximum);
    }

    [Required]
    [Display(ResourceType = typeof(CutReady.Web.Languages.Builder.Builder), Name = "WidthLabel")]
    public double ItemWidth { get; set; }

    [Required]
    [Display(ResourceType = typeof(CutReady.Web.Languages.Builder.Builder), Name = "HeightLabel")]
    public double ItemHeight { get; set; }

    [Required]
    [Display(ResourceType = typeof(CutReady.Web.Languages.Builder.Builder), Name = "DepthLabel")]
    public double ItemDepth { get; set; }

    public DimensionLock ItemWidthLock { get; set; }
    public DimensionLock ItemHeightLock { get; set; }
    public DimensionLock ItemDepthLock { get; set; }

    public override JobItem Clone()
    {
        return new CabinetItem(this);
    }

    public override bool Equals(object a_obj)
    {
        if (ReferenceEquals(null, a_obj))
            return false;

        if (ReferenceEquals(this, a_obj))
            return true;

        if (a_obj.GetType() != typeof (CabinetItem))
            return false;

        return Equals((CabinetItem) a_obj);
    }

    public override bool Equals(JobItem other)
    {
        var cabinet = other as CabinetItem;

        if (cabinet == null)
            return false;

        if (ReferenceEquals(this, cabinet))
            return true;

        if (!base.Equals(cabinet))
            return false;

        if (!ItemWidth.Equals(cabinet.ItemWidth))
            return false;

        if (!ItemHeight.Equals(cabinet.ItemHeight))
            return false;

        if (!ItemDepth.Equals(cabinet.ItemDepth))
            return false;

        return true;
    }

    public override int GetHashCode()
    {
        unchecked
        {
            int hashCode = base.GetHashCode();

            hashCode = (hashCode * 397) ^ ItemWidth.GetHashCode();
            hashCode = (hashCode * 397) ^ ItemHeight.GetHashCode();
            hashCode = (hashCode * 397) ^ ItemDepth.GetHashCode();

            return hashCode;
        }
    }

}

A: The only logical explanation for this behavior is that you've got something in the view data that's overriding the value from the property. If any of the following exist with a value of 155, that value will be used instead:

*

*ViewBag.ID

*ViewData["ID"]

*Request["ID"]
Also, remember that these are all case-insensitive, i.e. ViewBag.id would also be used to fill the value.


Responsive web design is a common term used in the online world. By now it has become a standard in developing any website. What seems to be ages ago, websites were never designed for mobile. This left a big gap in the online space once mobile devices began to stream content quickly and efficiently. Developers and designs worked to remedy this solution by providing the responsive solution. Websites programmed this way would adapt and change design based on the users browser's width. Scale any website and you will mostly like see the layout change to become more friendly to mobile devices. Several factors that may adjust include content this bandwidth intensive. Full width HD videos for example be stripped from the background to allow pages to load quickly. Multi columned layouts will begin to stack on top of each other has browser screens get smaller, allowing users to easily scroll through content rather than zoom. Navigation, if it is not already, will be presented by a single button to reveal a slide-out or pop-up menu. These are just a few of the main things taken into consideration with responsive design.
Unfortunately this is an approach often neglected in web design. Sure everyone at this point expects their site to work and load on mobile but appropriate time is rarely spent on this during the design phase of a new web project. Mobile design becomes an after thought where programmers merely adjust a few lines of code to "make things work". This is not the correct approach, to just make things work. Websites should be tailored to an experience based on the user. When this concept leads the charge in any new project, the results will be something everyone is proud to showcase.


Online Programs give you access to control features and spending reports on your time table. Levels of tools are available to specified administrators so your end users have to ability to access only the information that is pertinent to their position.
Every customer receives an email survey after the completion of their first order. A copy of a returned survey is sent to the President of Advanced-Online who personally responds to each survey. The main Customer Contact is copied on all relevant survey responses. Customer surveys keep your finger on the pulse of your end users' needs and help us ensure every issue receives our full attention.
Website visitors can easily request a product by clicking the product suggestion button located in the navigation bar of every website. Every inquiry receives a response after thorough research is completed.


"Tell me your story," I like to say, which leads to a confused look. "The whole story?" A 20-year-old patient named Libby responds. I think 20 years is not that much, but to her, she thinks the summary of her life is an impossible task. The open-ended question is designed to see where the patient will begin. Will she tell me where she was born, whether her parents stayed married, or will she focus on her friends or her academic life. As she constructs a narrative, it is my job to formulate hypotheses about why she is in my office. Of course there is the stated reason she came, but there are many unstated, and unknown reasons she is there as well. I am looking for, what some authors would term, "the analytic surface," which means where to take her narrative and go deeper. Libby spent a great deal of time talking about her mom leading me to think her parents were divorced, but in fact they were not. This confusion of mine leads me to wonder if perhaps Libby wished they were divorced, and/or felt neglected by her dad and controlled by her mom. "What about your dad?" I ask, intruding into her narrative since my sense was that the absence of hearing about her dad was meaningful. "He was there and he was not there. He did not seem to care about us," she says with tears in her eyes. The analytic surface in this case was a large and lengthy discussion of her relationship with her mom, moving us to the seemingly more painful relationship with her dad. Struggling to work with this analytic surface is the art of psychotherapy in that from this surface I try to look for meaningful experiences which are harder for us both to see, at first glance. This digging, if you will, needs to be gentle so as not to overwhelm the patient, but it also needs to penetrate the conscious experiences so the patient can experience her life in a deeper and more liberating way. Going below the analytic surface helps the patient understand the inhibitions and constrictions which prevent her from embracing her life.
Talking about oneself brings relief and a struggle. The thrill of being listened to is counterbalanced by the shame of sounding "silly, inappropriate, consumed with minutia," my fictional patient Adie reports. Psychotherapy as an opportunity to expose past experiences continues to stimulate me. I have never thought that Adie was inarticulate and yet, in her mind, she deeply fears that she cannot put words together in an interesting way. Hence she often sits in silence, with a pained look on her face. She often leaves sessions exhausted, even when she begins with high energy. "Today seems like it has exhausted you," I say, and she quickly responds, "this is a lot of work for me." I feel for Adie that she cannot see psychotherapy as a release, but rather she sees it as a medicine she has to take to get better, but the journey is one of endurance. Adie has never been listened to. No one in her life, by her report, has ever taken a keen interest in her thoughts, and so the opportunity for that interest makes her anxious and uncomfortable. We talk a lot about how traumatic it has been for her to want to be listened to but at the same time, she is too fearful to talk. She is caught in a never-ending bind, which, together we are slowly trying to unwind. Some days are better than others. Today was hard. Work for both of us.
Jonathan Flint MD http://grandchallenges.ucla.edu/depression/team/ presented his work today in which he gave a compelling talk demonstrating that he has found possible two genetic links to depression. He is a recent UCLA hire in which he joins the UCLA Grand Depression Challenge in which there is a multidisciplinary team working on understanding depression. He began with the familiar statistic that women are twice as likely to get depressed as men, and within that, women have a 20 percent chance of having a depression during their lifetime. He did not quite define depression but in the Q and A, he said that he was using the PHQ-9 which are nine questions to determine the diagnosis, which, of course, makes me suspect. Then he said it causes tremendous disability throughout the world and as such costs the world a lot of money in terms of lost labor. So, he summarizes that depression is common, causes disability and is costly and yet research on depression is minimally funded compared to diseases such as cancer or heart disease. He proceeds to show a negative study by his colleague Ken Kendler which did not demonstrate a gene for depression and so from that he concluded that depression is a heterogeneous disease. Well, that cannot be new information, I think to myself. He went to China where he studied only women, who apparently do not smoke or drink, and through looking at their DNA in their saliva, he could demonstrate that the women with depression had a different genetic makeup than did the controls. At this point I was beginning to be interested. The gene, he continues, impacts the mitochondrial DNA, which is the engine of the cell. He was a wonderful speaker and he did fascinating work, all as a result of new technology that makes sequencing DNA cheap and easy. Like the internet, UCLA could lead the world in this work. I am proud to be a Bruin today!
Substance use disorder, also known as drug use disorder, is a condition in which the use of one or more substances leads to a clinically significant impairment or distress. Although the termsubstance can refer to any physical matter, 'substance' in this context is limited to psychoactive drugs.
DSM 5 changed our language from substance abuse to substance use disorder. Further, the diagnostic system requires that the substances be specified such that the DSM IV diagnosis of "poly substance abuse" has become "opiate use disorder, methamphetamine use disorder, tobacco use disorder and cannabis use disorder." More specificity in the diagnosis will help big data analyze "population health," the new buzzword for focusing on trends and not on individuals. I wonder if there is a difference between "heroin use" and "heroin use disorder". Clearly, outlining the nature of the substances that the patient uses helps us understand the chemical feeling they are seeking. Yet, my experience in working in drug rehabilitation centers is that the majority of patients use all substances available to them including opiates, cannabis, alcohol, meth amphetamines and tobacco. I salute Lance Dodes MD http://www.lancedodes.com/ who says that substance abuse, like so many behaviors, are about self-sabotage, and not so much about the exact chemical that the patient is drawn to. He states, rightly so, that alcohol abuse is not qualitatively different from opiate abuse, but rather they are the result of self-hatred.This matches my clinical experience. If a patient goes from an alcohol use disorder to a gambling disorder, he does not have a new diagnosis, only a new symptom of an old diagnosis, which, in my mind would be a lost self. Rehabilitation centers need to help people love themselves, and how to do this is up for debate. Being tough, setting limits, or giving them understanding and compassion. Both approaches have successes and failures and both approaches do not know who to target and so most programs use a one-size fits all approach to a problem which uniquely develops in each person. In my mind, the diagnoses should be "escape disorder," to group people together who need to escape from themselves, such that the major challenge is to find out what they are escaping. If they no longer have to escape, the substance will recede in importance. Is this oversimplifying a complex disorder? I do not think so. It is a hard job to find out what the patient is scared to face, and, of course, the pain they are avoiding is layered and often not obvious. Still, if the focus was on the escape and not the drug, there would be more hope. Our diagnostic system is important since it helps patients understand themselves and their family members. To speak in terms of "use disorders" misses the point.
How do I come back to my blog in 2016? How do I not repeat my plea that psychiatrists need to return to history-taking, active listening, and thoughtful consideration of diagnoses, before plunging into the psychopharmacological rabbit hole, where patients do not know who they are or what their problem is, but they are stuck on medications which make them wonder if they, or the person who encouraged them into the mental health office, are "losing their mind." How do I express my passion for pharmacology which sits next to my passion for understanding and explaining the inner workings of a complex mental apparatus, shaped by years of experiences, and in particular, early vulnerable experiences which lay down a foundation of neural networks which can be re-wired with monumental effort, but there are no short-cuts.
I return to my psychoanalytic roots, my training which promotes the dyad, the relationship between doctor and patient, hoping to return to the comfort of the womb, only to be reminded that my imaginary "womb" is also troubled. The doctor/patient relationship is essential for healing, any healing, but at the same time, the power differential in that relationship needs to be understood and appreciated. Patients are vulnerable, as is the physician, but there is an important asymmetry here. Patients can be persuaded to harm themselves, so often evidenced by the seduction of the patient, leading to the patient as re-victimized as a sexual object.
Once again, I find myself in this middle band, the band in which the 15 minute psychopharmacological appointment seems greedy and inappropriate to me, while at the same time, the intense psychoanalytic relationship can be used to feed the narcissism of the analyst at the expense of the patient. There is a middle band, but it is lonely and thinly available to me, in terms of like-minded colleagues. This has been my challenge, my point, in post after post.
Sunday, I immersed myself, or re-immersed myself, I should say in a psychoanalytic historical lecture about Sandor Ferenczi MD, the Hungarian psychoanalyst who was one of the many proteges of Freud, before he was ex-communicated. In the early 1900s Ferenczi promoted the idea that the doctor and patient are both flowers, sitting together trying to understand one another. There is free association on both sides, he would say. André Haynal MD, a swiss psychiatrist/psychoanalyst explained Ferenczi in historical context, allowing me to propose that while Ferenczi thought he encouraged free association, perhaps he encouraged the patient to feed Ferenczi's narcissism, to make the analyst feel good, and in so doing, the patient repeated early trauma of sacrificing oneself for the other. Dr. Haynal appreciated the discourse, and a lively discussion ensued. I found myself pathologizing a great forefather in my field, knowing the possibility that one person's great psychoanalytic treatment could be another person's narcissistic feeding frenzy. In other words, treatment is not measurable, but ideas are worth struggling with, to deepen understanding.
With age, I see the multiplicity of ways in which scenes can be interpreted. One person's mental illness is another person's creative expression. The lines are blurry. I embrace that uncertainty. Now, I need to find peers.


Although Research and Development (R&D) tax credits have been around for some time now, the reliefs given by the government have become increasingly generous and the scope around what actually counts as R&D has widened.
With this in mind, we have set up a specialist division that deals solely with R&D.
Broadly, this is an extra allowance that can equate up to 33p in the £. It can be cash back for a company or a reduction in corporation tax. The government is keen to give this money to qualifying companies and regularly remind us that for the majority of businesses, they should be claiming but are not.
R&D has a very wide meaning and is not just for scientific invention expenditure. It can be for almost any business (as long as they are a limited company). To qualify, we need: 1) A problem 2) Thought given into finding a solution 3) Uncertainty as to whether the solution will work 4) The solutions (whether successful or not) were innovative, i.e. were not readily available to an average person in your business.
Starts with a visit/telephone/skype conversation to understand your business and to ascertain R&D work – there will usually be several conversations as the draft claim progresses.
Accounts from your own accountant for the past 2 years and a copy of the corporation tax returns they prepared (where we don't already act for you).
We prepare a report for HMRC on the R&D together with costings and tax claims.
A wait of about 8 weeks on average.
Once agreed, you will then receive your cheque.
And we will invoice our agreed percentage.
According to latest government stats., less than 10% of eligible businesses have claimed the relief.
We offer a no win no fee basis of 20% of what we save you. We have a 100% success rate with our claims. If there is no claim, we won't submit one. We have a specialist division dealing with all claims with dedicated staff, both in tax and commercial experience to identify your possible claims.
Why hasn't my Accountant told me of this? Your Accountant is very probably not a specialist in R&D and therefore will probably think that you are not entitled to your claim – well they are probably wrong.
Choosing an accountant to handle your finances is a daunting task so I was so pleased I made the right choice in choosing "The Tax Shop" Since starting my business in 2008 Matthew has done a first rate job of compiling my yearly tax returns and advising me of the most affective way to save me money. He has always been available to give sound financial advice in an easy to understand manor. I would have no hesitation in recommend "The Tax Shop" to anyone that is looking for first class service at an excellent price.
I can recommend the tax shop as they handle my company accounts. They provide a reliable, efficient service at very affordable rates and have helped save me and my company lots of money in the last year!
We have employed Matt and his team at The Tax Shop for a number of years whilst running our own business. We chose The Tax Shop due to its fresh modern high street shop front location, not what is perceived of accountants as a rule and have to state that we were not disappointed. Both Matt and all his staff were not only friendly and approachable but most importantly efficient. All our tax affairs were dealt with both professionally and for a reasonable fee. In conclusion we would highly recommend their services.


Street art is right up there with food on the list of treasures from my wanders. The vibrant colors, it's accessibility, and the sheer variety feed my soul. I "collect" street art from around the world to share here. Enjoy!