text:
% mtimesx_build compiles mtimesx.c with BLAS libraries
%******************************************************************************
%
%  MATLAB (R) is a trademark of The Mathworks (R) Corporation
%
%  Function:    mtimesx_build
%  Filename:    mtimesx_build.m
%  Programmer:  James Tursa
%  Version:     1.40
%  Date:        October 4, 2010
%  Copyright:   (c) 2009, 2010 by James Tursa, All Rights Reserved
%
%  This code uses the BSD License:
%
%  Redistribution and use in source and binary forms, with or without
%  modification, are permitted provided that the following conditions are
%  met:
%
%     * Redistributions of source code must retain the above copyright
%       notice, this list of conditions and the following disclaimer.
%     * Redistributions in binary form must reproduce the above copyright
%       notice, this list of conditions and the following disclaimer in
%       the documentation and/or other materials provided with the distribution
%
%  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
%  AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
%  IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
%  ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE
%  LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
%  CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
%  SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
%  INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
%  CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
%  ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
%  POSSIBILITY OF SUCH DAMAGE.
%
%--
%
%  mtimesx_build compiles mtimesx.c and mtimesx_RealTimesReal.c with the BLAS
%  libraries libmwblas.lib (if present) or libmwlapack.lib (if libmwblas.lib
%  is not present). This function basically works as follows:
%
%  - Opens the current mexopts.bat file in the directory [prefdir], and
%    checks to make sure that the compiler selected is cl or lcc. If it
%    is not, then a warning is issued and the compilation continues with
%    the assumption that the microsoft BLAS libraries will work.
%
%  - Looks for the file libmwblas.lib or libmwlapack.lib files in the
%    appropriate directory: [matlabroot '\extern\lib\win32\microsoft']
%                       or  [matlabroot '\extern\lib\win32\lcc']
%                       or  [matlabroot '\extern\lib\win64\microsoft']
%                       or  [matlabroot '\extern\lib\win64\lcc']
%
%  - Changes directory to the directory of the file mtimesx.m.
%
%  - Compiles mtimesx.c (which includes mtimesx_RealTimesReal.c) along with
%    either libmwblas.lib or libmwlapack.lib depending on the version of
%    MATLAB. The resulting exedcutable mex file is placed in the same
%    directory as the source code. The files mtimesx.m, mtimesx.c, and
%    mtimesx_RealTimesReal.c must all be in the same directory.
%
%  - Changes the directory back to the original directory.
%
%  Change Log:
%  2009/Sep/27 --> 1.00, Initial Release
%  2010/Feb/15 --> 1.10, Fixed largearrardims typo to largeArrayDims
%  2010/Oct/04 --> 1.40, Updated support for OpenMP compiling
%
%**************************************************************************

function mtimesx_build(x)
disp(' ');
disp('... Build routine for mtimesx');

TRUE = 1;
FALSE = 0;

%\
% Check for number of inputs & outputs
%/

noopenmp = FALSE;
if( nargin == 1 )
    if( isequal(upper(x),'NOOPENMP') )
        noopenmp = TRUE;
    else
        error('Invalid input.');
    end
elseif( nargin ~= 0 )
    error('Too many inputs. Expected none.');
end
if( nargout ~= 0 )
    error('Too many outputs. Expected none.');
end

%\
% Check for non-PC
%/

disp('... Checking for PC');
try
    % ispc does not appear in MATLAB 5.3
    pc = ispc ;
catch
    % if ispc fails, assume we are on a Windows PC if it's not unix
    pc = ~isunix ;
end

if( ~pc )
    disp('Non-PC auto build is not currently supported. You will have to');
    disp('manually compile the mex routine. E.g., as follows:');
    disp(' ');
    disp('>> blas_lib = ''the_actual_path_and_name_of_your_systems_BLAS_library''');
    disp('>> mex(''-DDEFINEUNIX'',''mtimesx.c'',blas_lib)');
    disp(' ');
    disp('or');
    disp(' ');
    disp('>> mex(''-DDEFINEUNIX'',''-largeArrayDims'',''mtimesx.c'',blas_lib)');
    disp(' ');
    error('Unable to compile mtimesx.c');
end

%\
% Check to see that mtimesx.c source code is present
%/

disp('... Finding path of mtimesx C source code files');
try
    mname = mfilename('fullpath');
catch
    mname = mfilename;
end
cname = [mname(1:end-6) '.c'];
if( isempty(dir(cname)) )
    disp('Cannot find the file mtimesx.c in the same directory as the');
    disp('file mtimesx_build.m. Please ensure that they are in the same');
    disp('directory and try again. The following file was not found:');
    disp(' ');
    disp(cname);
    disp(' ');
    error('Unable to compile mtimesx.c');
end
disp(['... Found file mtimesx.c in ' cname]);

%\
% Check to see that mtimesx_RealTimesReal.c source code is present
%/

rname = [mname(1:end-13) 'mtimesx_RealTimesReal.c'];
if( isempty(dir(rname)) )
    disp('Cannot find the file mtimesx_RealTimesReal.c in the same');
    disp('directory as the file mtimesx_build.m. Please ensure that');
    disp('they are in the same directory and try again. The');
    disp('following file was not found:');
    disp(' ');
    disp(rname);
    disp(' ');
    error('Unable to compile mtimesx.c');
end
disp(['... Found file mtimesx_RealTimesReal.c in ' rname]);

%\
% Open the current mexopts.bat file
%/

mexopts = [prefdir '\mexopts.bat'];
fid = fopen(mexopts);
if( fid == -1 )
    error('A C/C++ compiler has not been selected with mex -setup');
end
disp(['... Opened the mexopts.bat file in ' mexopts]);
disp('... Reading the mexopts.bat file to find the compiler and options used.');

%\
% Check for the correct compiler selected.
%/

ok_cl = FALSE;
ok_lcc = FALSE;
omp_option = '';
compiler = '(unknown)';
compilername = '';
while( TRUE )
    tline = fgets(fid);
    if( isequal(tline,-1) )
        break;
    else
        if( isempty(compilername) )
            y = findstr(tline,'OPTS.BAT');
            if( ~isempty(y) )
                x = findstr(tline,'rem ');
                if( ~isempty(x) )
                    compilername = tline(x+4:y-1);
                end
            end
        end
        x = findstr(tline,'COMPILER=lcc');
        if( ~isempty(x) )
            ok_lcc = TRUE;
            libdir = 'lcc';
            compiler = 'LCC';
            disp(['... ' compiler ' is the selected compiler']);
            break;
        end
        x = findstr(tline,'COMPILER=cl');
        if( ~isempty(x) )
            ok_cl = TRUE;
            libdir = 'microsoft';
            compiler = ['Microsoft_' compilername '_cl'];
            omp_option = ' /openmp';
            disp(['... ' compiler ' is the selected compiler']);
            break;
        end
        x = findstr(tline,'COMPILER=bcc32');
        if( ~isempty(x) )
            ok_cl = TRUE;
            libdir = 'microsoft';
            compiler = ['Borland_' compilername '_bcc32'];
            disp(['... ' compiler ' is the selected compiler']);
            disp('... Assuming that Borland will link with Microsoft libraries');
            break;
        end
        x = findstr(tline,'COMPILER=icl');
        if( ~isempty(x) )
            ok_cl = TRUE;
            if( pc )
                omp_option = ' -Qopenmp';
            else
                omp_option = ' -openmp';
            end
            libdir = 'microsoft';
            compiler = ['Intel_' compilername '_icl'];
            disp(['... ' compiler ' is the selected compiler']);
            disp('... Assuming that Intel will link with Microsoft libraries');
            break;
        end
        x = findstr(tline,'COMPILER=wc1386');
        if( ~isempty(x) )
            ok_cl = TRUE;
            libdir = 'microsoft';
            compiler = ['Watcom_' compilername '_wc1386'];
            disp(['... ' compiler ' is the selected compiler']);
            disp('... Assuming that Watcom will link with Microsoft libraries');
            break;
        end
        x = findstr(tline,'COMPILER=gcc');
        if( ~isempty(x) )
            ok_cl = TRUE;
            libdir = 'microsoft';
            omp_option = ' -fopenmp';
            compiler = 'GCC';
            disp(['... ' compiler ' is the selected compiler']);
            disp('... Assuming that GCC will link with Microsoft libraries');
            break;
        end
    end
end
fclose(fid);

%\
% MS Visual C/C++ or lcc compiler has not been selected
%/

if( ~(ok_cl | ok_lcc) )
    warning('... Supported C/C++ compiler has not been selected with mex -setup');
    warning('... Assuming that Selected Compiler will link with Microsoft libraries');
    warning('... Continuing at risk ...');
    libdir = 'microsoft';
end

%\
% If an OpenMP supported compiler is potentially present, make sure that the
% necessary compile option is present in the mexopts.bat file on the COMPFLAGS
% line.  If necessary, build a new mexopts.bat file with the correct option
% added to the COMPFLAGS line.
%/

while( TRUE )
ok_openmp = FALSE;
ok_compflags = FALSE;
xname = '';
if( isempty(omp_option) )
    disp('... OpenMP compiler not detected ... you may want to check this website:');
    disp('    http://openmp.org/wp/openmp-compilers/');
elseif( noopenmp )
    disp(['... OpenMP compiler potentially detected, but not checking for ''' omp_option ''' compile option']);
else
    disp('... OpenMP compiler potentially detected');
    disp(['... Checking to see that the ''' omp_option ''' compile option is present']);
    fid = fopen(mexopts);
    while( TRUE )
        tline = fgets(fid);
        if( isequal(tline,-1) )
            break;
        else
            x = findstr(tline,'set COMPFLAGS');
            if( ~isempty(x) )
                ok_compflags = TRUE;
                x = findstr(tline,omp_option);
                if( ~isempty(x) )
                    ok_openmp = TRUE;
                end
                break;
            end
        end
    end
    fclose(fid);
    if( ~ok_compflags )
        warning(['... COMPFLAGS line not found ... ''' omp_option ''' will not be added.']);
    elseif( ~ok_openmp )
        disp(['... The ''' omp_option ''' compile option is not present ... adding it']);
        xname = [mname(1:end-6) '_mexopts.bat'];
        disp(['... Creating custom options file ' xname ' with the ''' omp_option ''' option added.']);
        fid = fopen(mexopts);
        fidx = fopen(xname,'w');
        if( fidx == -1 )
            xname = '';
            warning(['... Unable to create custom mexopts.bat file ... ''' omp_option ''' will not be added']);
        else
            while( TRUE )
                tline = fgets(fid);
                if( isequal(tline,-1) )
                    break;
                else
                    x = findstr(tline,'set COMPFLAGS');
                    if( ~isempty(x) )
                        n = numel(tline);
                        e = n;
                        while( tline(e) < 32 )
                            e = e - 1;
                        end
                        tline = [tline(1:e) omp_option tline(e+1:n)];
                    end
                    fwrite(fidx,tline);
                end
            end
            fclose(fidx);
        end
        fclose(fid);
    end
end

%\
% Construct full file name of libmwblas.lib and libmwlapack.lib. Note that
% not all versions have both files. Earlier versions only had the lapack
% file, which contained both blas and lapack routines.
%/

comp = computer;
mext = mexext;
lc = length(comp);
lm = length(mext);
cbits = comp(max(1:lc-1):lc);
mbits = mext(max(1:lm-1):lm);
if( isequal(cbits,'64') | isequal(mbits,'64') )
    compdir = 'win64';
    largearraydims = '-largeArrayDims';
else
    compdir = 'win32';
    largearraydims = '';
end

lib_blas = [matlabroot '\extern\lib\' compdir '\' libdir '\libmwblas.lib'];
d = dir(lib_blas);
if( isempty(d) )
    disp('... BLAS library file not found, so linking with the LAPACK library');
    lib_blas = [matlabroot '\extern\lib\' compdir '\' libdir '\libmwlapack.lib'];
end
disp(['... Using BLAS library lib_blas = ''' lib_blas '''']);

%\
% Save old directory and change to source code directory
%/

cdold = cd;
if( length(mname) > 13 )
    cd(mname(1:end-13));
end

%\
% Do the compile
%/

disp('... Now attempting to compile ...');
disp(' ');
try
    if( isunix )
        if( isempty(largearraydims) )
            if( isempty(xname) )
                disp(['mex(''-DDEFINEUNIX'',''' cname ''',lib_blas,''-DCOMPILER=' compiler ''')']);
                disp(' ');
                mex('-DDEFINEUNIX',cname,lib_blas,['-DCOMPILER=' compiler]);
            else
                disp(['mex(''-f'',''' xname ''',''-DDEFINEUNIX'',''' cname ''',lib_blas,''-DCOMPILER=' compiler ''')']);
                disp(' ');
                mex('-f',xname,'-DDEFINEUNIX',cname,lib_blas,['-DCOMPILER=' compiler]);
            end
        else
            if( isempty(xname) )
                disp(['mex(''-DDEFINEUNIX'',''' cname ''',''' largearraydims ''',lib_blas,''-DCOMPILER=' compiler ''')']);
                disp(' ');
                mex('-DDEFINEUNIX',largearraydims,cname,lib_blas,['-DCOMPILER=' compiler]);
            else
                disp(['mex(''-f'',''' xname ''',''-DDEFINEUNIX'',''' cname ''',''' largearraydims ''',lib_blas,''-DCOMPILER=' compiler ''')']);
                disp(' ');
                mex('-f',xname,'-DDEFINEUNIX',largearraydims,cname,lib_blas,['-DCOMPILER=' compiler]);
            end
        end
    else
        if( isempty(largearraydims) )
            if( isempty(xname) )
                disp(['mex(''' cname ''',lib_blas,''-DCOMPILER=' compiler ''')']);
                disp(' ');
                mex(cname,lib_blas,['-DCOMPILER=' compiler]);
            else
                disp(['mex(''-f'',''' xname ''',''' cname ''',lib_blas,''-DCOMPILER=' compiler ''')']);
                disp(' ');
                mex('-f',xname,cname,lib_blas,['-DCOMPILER=' compiler]);
            end
        else
            if( isempty(xname) )
                disp(['mex(''' cname ''',''' largearraydims ''',lib_blas,''-DCOMPILER=' compiler ''')']);
                disp(' ');
                mex(cname,largearraydims,lib_blas,['-DCOMPILER=' compiler]);
            else
                disp(['mex(''-f'',''' xname ''',''' cname ''',''' largearraydims ''',lib_blas,''-DCOMPILER=' compiler ''')']);
                disp(' ');
                mex('-f',xname,cname,largearraydims,lib_blas,['-DCOMPILER=' compiler]);
            end
        end
    end
    disp('... mex mtimesx.c build completed ... you may now use mtimesx.');
    disp(' ');
    mtimesx;
    break;
catch
    if( noopenmp )
        cd(cdold);
        disp(' ');
        disp('... Well, *that* didn''t work either!');
        disp(' ');
        disp('The mex command failed. This may be because you have already run');
        disp('mex -setup and selected a non-C compiler, such as Fortran. If this');
        disp('is the case, then rerun mex -setup and select a C/C++ compiler.');
        disp(' ');
        error('Unable to compile mtimesx.c');
    else
        disp(' ');
        disp('... Well, *that* didn''t work ...');
        disp(' ');
        if( isequal(omp_option,' /openmp') )
            disp('This may be because an OpenMP compile option was added that the');
            disp('compiler did not like. For example, the Standard versions of the');
            disp('Microsoft C/C++ compilers do not support OpenMP, only the');
            disp('Professional versions do. Attempting to compile again but this');
            disp(['time will not add the ''' omp_option ''' option.'])
        else
            disp('This may be because an OpenMP compile option was added that the');
            disp('compiler did not like. Attempting to compile again, but this time');
            disp(['will not add the ''' omp_option ''' option.'])
        end
        disp(' ');
        noopenmp = TRUE;
    end
end
end

%\
% Restore old directory
%/

cd(cdold);

return
end

redpajama_set_name: RedPajamaGithub


text:
The Critical Path
The Critical Path is a talk show contemplating the causality of success and failure in the evolving story of mobile computing and related industries. Using Apple as a lens to look at existing and emerging tech markets, we try to understand what it means to be great.
Hosted by Horace Dediu, Anders Brownworth, and Judd Rubin.
#216: Tim's Letter
January 8, 2019 at 12:00AM • 1 hour 11 minutes
Tim's Letter, some #CriticalQuestions and the problem with trying to account for the unaccountable.
#215: Fly Me to The Moon
January 3, 2019 at 3:00AM • 1 hour 3 minutes
Horace shares his thoughts about how Apple may contribute to the transportation and health care sectors in the years to come, and catches up on some 1990s television in 2019's first episode of The Critical Path.
#214: Anders Lives!
December 9, 2018 at 2:00PM • 1 hour 1 minute
An old friend returns to The Critical Path to discuss Crypto, Trust and Horace's heart.
#213: iPads, Cheaters and Lamp Posts
December 2, 2018 at 9:00PM • 1 hour 22 minutes
The new iPad Pro and some #CriticalQuestions inspire a conversation about cheaters and what insights lamp posts can and cannot provide. Later on, Horace shares some exciting news about Micromobility California.
#212: Ex Machina: The Telescope, The Reformation and The Historian's Dilemma
November 25, 2018 at 11:00PM • 52 minutes
Henri Dediu joins Horace and Judd to discuss lenses, rebels and weighing the what vs. the why when looking to the past.
#211: The Four Questions
November 4, 2018 at 10:00PM • 59 minutes
Horace goes old school while sifting through the details of the latest Apple earnings call and shares why he's looking forward to not seeing certain numbers in the earnings reports to come.
#210: Worth a Business Trip?
November 1, 2018 at 6:00PM • 1 hour 4 minutes
Horace reflects on pricing, minivans, the pecking order of the new products and more from the pre-Halloween Apple event in Brooklyn, NY.
#209: Ex Machina: Corporations and Canals
October 28, 2018 at 7:00PM • 1 hour 43 minutes
In the first half of this special double episode of The Critical Path, Horace shares his thoughts on one of the first, and most powerful, corporations ever, the Dutch East India Company and how its impact can still be felt. Later on (54:00), in advance of Apple's upcoming event in NYC, Horace explores what specifically made New York... New York.
#208: Ex Machina: The Company Town
October 21, 2018 at 2:00PM • 47 minutes
Prompted by his recent visit to Apple Park, Horace examines the history of the company town, its job to be done and wonders who lives in them today in another special edition of The Critical Path.
#207: Ex Machina: Telegraph
October 15, 2018 at 12:00AM • 59 minutes
In the first of a series of special episodes of The Critical Path, Horace aims his lens at a seminal innovation from the past, compares and contrasts adoption patterns of yesterday and today, and delineates the reasons why pigeons were not ideal.
Follow @asymco
Anders Brownworth
Follow @anders94
Judd Rubin
Follow @extraordinawry
Subscribe to Critical Path
Critical Path + After Dark
Sponsor The Critical Path
Contact Horace, Anders , and Judd

redpajama_set_name: RedPajamaCommonCrawl


text:
England, and under such regulations and restrictions as are used in other colonies; and in the mean time, and until such assemblies can be called as aforesaid, all persons inhabiting in, or resorting to, our sakl colonies, may confide in our royal protection...
The Parliamentary Register: Proceedings and Debates - Page 99
de Great Britain. Parliament - 1802
Canadiana, Volume 2
William White - 1890 - 264 pages
...into four colonies, Quebec, Bast Florida, West Florida and Granada)" might confide in His Majesty's royal protection for the enjoyment of the benefit of the laws of his realm of England for the hearing and determining of all causes, as well criminal as civil, according...
The Quebec Act, 1774
Gerald Ephraim Hart - 1891 - 94 pages
...into four colonies, Quebec, East Florida, West Florida and Granada)" might confide in His Majesty's royal protection for the enjoyment of the benefit of the laws of his realm of England for the hearing and determining of all causes, as well criminal as civil, according...
Rapports judiciaires revisés de la province de Québec: comprenant la ...
Michel Mathieu - 1892 - 522 pages
...to the laws of England, and under such regulations and restrictions as are used in other colonies ; and in the mean time, and until such assemblies can...resorting to our said colonies may confide in our roval protection for the enjoyment of the benefit of the laws of our realm of Kmylnnd ; for which purpose,...
The Province of Quebec and the Early American Revolution: A Study in English ...
Victor Coffin - 1896 - 328 pages
...Hilt. Droll. Can. tions and restrictions as are used in the other colonies;" and that in the meantime "all persons inhabiting in or resorting to our said...Protection for the enjoyment of the benefit of the laws of England." To which end power has been given to the governor and council to establish courts of justice...
The Geographical Distribution of the Vote of the Thirteen States on the ...
Orin Grant Libby - 1897 - 634 pages
...Illtt. Droit. Can. tions and restrictions as are used in the other colonies;" aud that in the meantime "all persons inhabiting in or resorting to our said...Protection for the enjoyment of the benefit of the laws of England." To which end power has been given to the governor and council to establish courts of justice...
A Short History of British Colonial Policy
Hugh Edward Egerton - 1897 - 580 pages
...those colonies and provinces in America, which are under our immediate government. . . In the meantime and until such Assemblies can be called, as aforesaid all persons inhabiting in or resorting in our said Colonies, may confide in our Royal protection for the enjoyment of the benefit of the laws...
Our Struggle for the Fourteenth Colony: Canada, and the American ..., Volume 1
Justin Harvey Smith - 1907 - 680 pages
...turn on the next. The same proclamation of 1763 had announced, as with a flourish of trumpets, that ' all persons inhabiting in or resorting to our said...Protection for the enjoyment of the benefit of the laws of England,' and another sentence appeared to place the criminal and the civil law on the same footing...
Documents Relating to the Constitutional History of Canada
Public Archives of Canada - 1907 - 768 pages
...used in other colonies." And then it is further declared in your Majesty's said proclamation, "that in the mean time, and until such '' assemblies can...called as aforesaid, all persons inhabiting in or resort" ing to your Majesty's said colonies inay confide in your Majesty's royal " protection for the...
Report, Volume 4
Ontario. Dept. of Public Records and Archives - 1907 - 534 pages
...EniIland, and under such regulations and restrictions as are used in other colonies; and in the meantime, and until such assemblies can be called as aforesaid,...all persons inhabiting in or resorting to our said oolonies may confide in our royal protection for the enjoyment of the benefit of the Laws of our Realm...
...used in other colonies." And then it is further declared in your Majesty's said proclamation, " that in the mean time, and until such " assemblies can...called as aforesaid, all persons inhabiting in or resort" ing to your Majesty's said colonies may cotiftde in your Majesty's royal " jrrotection for...


text:
Calchas est un genre de scorpions de la famille des Iuridae.

Distribution
Les espèces de ce genre se rencontrent en Turquie et en Irak. Leur présence en Syrie est incertaine.

Liste des espèces
Selon The Scorpion Files (29/07/2020) :
 Calchas anlasi Yağmur, Soleglad, Fet & Kovařík, 2013
 Calchas birulai Fet, Soleglad & Kovařík, 2009
 Calchas kosswigi Yağmur, Soleglad, Fet & Kovařík, 2013
 Calchas nordmanni Birula, 1899

Publication originale
 Birula, 1899 : A new species of scorpions for the Russian fauna. Annuaire du Muséum Zoologique de l'Académie Impériale des Sciences de Saint-Pétersbourg, , .

Liens externes
 The Scorpion Files : Jan Ove Rein, Trondheim, Norwegian University of Science and Technology

Notes et références

Iuridae
Genre de scorpions (nom scientifique)

redpajama_set_name: RedPajamaWikipedia


Logo & trophy / object design for the annual ANTI Festival International Prize for Live Art. Made of one piece of transparent acrylic block with laser engraved patterns & text. Made in Finland.
The Live Art Prize is a sub-brand of ANTI festival, so the shape for the logo, object and the pattern is a detail from the festival logo.


text:
Home > Torchwood > Episode Guide > Torchwood: Miracle Day
Torchwood: Miracle Day
About Torchwood Miracle Day
The Fourth series of Torchwood titled Miracle Day aired summer 2011. Work on the series started in January 2011. Miracle Day was made by BBC Wales and Starz. The ten part series was initially shot in the US, and later returned to Wales.
Torchwood: Miracle Day – Synopsis
The new ten-part series of Torchwood will see the return of regular characters Jack Harkness (John Barrowman) and Gwen Cooper (Eve Myles). Miracle Day will also see the return of Rhys Williams (Kai Owen) and PC Andy Davidson (Tom Price).
Miracle Day is the most explosive Torchwood story yet. Gwen will be shown living peacefully in Wales with her husband Rhys and their child Anwen when she encounters a new danger that will push her to the limit.
One day, nobody dies. All across the world, nobody dies. And then the next day, and the next, and the next, people keep aging — they get hurt and sick — but they never die. The result: a population boom, overnight. With all the extra people, resources are finite. It's said that in four months' time, the human race will cease to be viable. But this miracle can't be a natural event – someone's got to be behind it.
When C.I.A. agent Rex Matheson investigates a global conspiracy, he finds himself unearthing a threat which challenges the entire human race.
The answers seem to lie within an old, secret British institute, known only as Torchwood. But Torchwood was destroyed, years ago, and the keys to the institute are held by its only two survivors – former Police Officer Gwen Cooper, who has long since disappeared along with her husband and child, and the mysterious Captain Jack Harkness, a man whose history seems to stretch back centuries.
With Rex under attack from all sides, in both the US and the UK, he soon discovers there are forces at work within every level of society, determined to stop Torchwood's return. As a chain of events across the world links together the most disparate and unlikely individuals – including a surgeon, a killer, senators and CEOs – a new Torchwood team takes shape. But this time, with Miracle Day, the threat is much closer to home, as they realize that their greatest enemy is mankind itself…
Torchwood: Miracle Day had a working title of Torchwood: The New World.
Rex Matheson (Mekhi Phifer)
He's the golden boy. The embodiment of the American dream and has been all his life. Harvard education, Rex is destined for success and could make a fortune in Wall Street or Hollywood, but he chose the C.I.A. because he believes in justice and will fight for it. He can talk his way into anything, then charm his way out, fast. This may be just what he needs as he joins forces with Jack and Gwen to fight a global mystery behind "Miracle Day" that has them racing from one crisis to another, dodging assassins, blackmail, corruption and conspiracy, from Washington to Wales and the slums of Shanghai.
Esther Drummond (Alexa Havins)
Esther is an innocent, in a world of assassins, liars and zealots. She got where she is with the C.I.A through diligence and application. Hard work keeps Esther focused but she still dreams of active duty as a field agent serving her country. The dream is going to happen faster than she thinks and in no time at all, Esther finds herself running alongside Jack, Gwen and Rex, living off the grid, gun in hand, fighting a global conspiracy against enemies ranging from big business to the state. It's a tough, brutal, hard lifestyle where survival is hard won and life-changing choices have to be made.
Oswald Danes (Bill Pullman)
Well-educated and a former school teacher, Oswald's a convicted child killer, both guilty and unrepentant. But when Oswald survives his own execution, he's given a whole new life. The most infamous man in the world, he becomes the most provocative figure in modern media. He's a flare, reviled yet mesmerizing, whose very existence embodies how the world changed on "Miracle Day".
Dr. Vera Juarez (Arlene Tur)
An attending surgeon in Washington D.C., she's smart, fast talking and hard working, Vera is on the frontline of medical care on "Miracle Day". As the world crisis grows, Vera's surgical and ER experience sees her recruited to advise on government think-tanks until she has to make a moral choice of enormous consequence. Sexy, confident and passionate, Vera's life is soon inextricably tangled up with Rex's.


text:
import React from 'react';
import renderer from 'react-test-renderer';
import { ResultItem } from './result-item';

describe('<ResultItem /> component', () => {
  let theme = {};

  beforeEach(() => {
    theme = {};
  });

  it('should render a result item component with a text icon', () => {
    const item = {
      title: 'Text Item',
      subtitle: 'Text Subtitle',
      icon: {
        type: 'text',
        letter: 'T',
      },
    };
    const component = renderer.create(<ResultItem theme={theme} item={item} />);
    const tree = component.toJSON();
    expect(tree).toMatchSnapshot();
  });

  it('should render a result item component with a file icon', () => {
    const item = {
      title: 'File Title',
      subtitle: 'File Subtitle',
      icon: {
        type: 'file',
        path: './icon.png',
      },
    };
    const component = renderer.create(<ResultItem theme={theme} item={item} />);
    const tree = component.toJSON();
    expect(tree).toMatchSnapshot();
  });

  it('should render a result item component in a selected state', () => {
    const item = {
      title: 'File Title',
      subtitle: 'File Subtitle',
      icon: {
        type: 'file',
        path: './icon.png',
      },
    };
    const component = renderer.create(
      <ResultItem theme={theme} item={item} selected />
    );
    const tree = component.toJSON();
    expect(tree).toMatchSnapshot();
  });
});


There was a knock on my door. I opened it and he was there.
Vitaglobulus citorotatus ambulocanthus brutum. I did not know that before, but that is what I found out he was. A living spherical fast-rotating mobile wheel-like creature. Indeed, he had the appearance of any ball you see the children playing with, as you pass by the park in the evenings. Only he was larger, like an overblown football, one which humans would use if they were giants. And like a ball gathering speed downhill, he rolled straight through the door and into the hall.
At first, he refused to settle and bounced up and down as any ball would. He rolled through the rooms of my house as though it were a museum or an art gallery meant for display. You could clearly see he was no ordinary ball from the way he deftly maneuvered through the various nooks and corners. At that moment, I did not know he was a living being, but I guessed something odd was going on. After he was done with his leaping, hopping, skipping, capering, jouncing and gamboling, he rolled to the hall and settled on the couch. It was then I was able to take a good look at him for the first time.
He sat on the couch in blissful stillness, as though he had derived great enjoyment and satisfaction from his playful frolic through the rooms. If you can call the ball a body, then his entire body was a face. Two round eyes peered at me with a jovial twinkle in them. Below his eyes, a small mouth with delicate lips parted with the most friendly smile I had ever seen in my life. And instead of being baffled or afraid, it made me feel delighted to find so strange a creature sitting before me.
"So how is your rolling; I mean your life, going?" he asked.
"You look like Humpty-Dumpty and speak in riddles. And you are weird but fun like the Terries and Fermies," I said and laughed. He joined in the laughter and almost rolled down the couch in his mirth.
He burst into laughter and bounced away, out through the door, rolling down the street. As I sat in wonderment, I saw him vanish around the bend.


text:
Arts & Culture • Music
Freedom, Escape, and Finding Your Own Place: Indie Duo Desert Sparrow Shares Music Video for "Drive"
October 30th, 2018 – You can't pin Desert Sparrow down. The LA—by way of Australia—based duo just released their music video for "Drive" and just as a sparrow learns to spread its wings and fly away from the nest, "Drive" is about freedom, escape, searching for meaning, and finding your place in the world.
LISTEN TO "DRIVE" HERE.
"Drive" is about escape. It's about trying to be good and honest to people, but being constantly let down. It's about finding peace in the things you love, and sometimes that means isolating yourself from the rest of the world whether it be a stranded beach, the mountains, desert or snow.
On the video, the duo says: "The concept for the music video was to have a female skateboarder as the lead role. Lucy Osinski (in real life) is the founder of a Venice Beach skate crew calledGRLSWIRL, which is a modern-retro all female community focused on bringing femininity to a male dominated skate scene. We love this concept because it's about breaking stereotypes and building a community. The storyline in the video deals with everyday problems people go through. Lucy is having a rough day with her job, her mom, her boyfriend; however, she keeps going. She simply finds peace & solace through skateboarding and listening to music. It's about the importance of finding those small things in life to make you happy."
About: Desert Sparrow are a Los Angeles based indie rock band hailing from the beaches of Sydney, Australia. Kylie Adams and Dave Carreno began their musical journey together by playing covers at local open mics in 2013 before forming their own creative path into songwriting. Their main artistic influences are 60's rock n roll, folk, spaghetti western, and surf. The result is a narrative experience which paints images of solitude, hardship and perseverance on backgrounds of desert roads and California coastlines. Desert Sparrow draws inspiration from bands such as Fleetwood Mac, Florence and the Machine, BRMC, and Angus & Julia Stone.
Before meeting each other, Kylie began playing piano at the age of 5 and later fell in love with singing after hearing Stevie Nicks constantly playing from her parents' stereo. Writing poetry and singing in her bedroom was always her way of releasing emotions behind closed doors, yet she never had the intention of taking it to the stage. After losing a bet to a friend, Kylie found herself singing karaoke in a packed restaurant one night and never looked back. Dave's interest in music came later, buying a guitar at 21 after seeing BRMC perform for the 1 st time. It was the song "Fault Line" that made him understand how powerful an acoustic guitar and harmonica performance can be. A few years later, he met an English friend traveling who gave him a copy of 'Definitely Maybe' by Oasis, and it was in that exact moment he knew he wanted to start a band and pursue music professionally.
After recording their debut EP 'Leave This Town' in 2014, the band decided to venture over to Los Angeles. There, they released a 2nd EP titled 'City of Dreams' in 2016. It was self-produced and recorded with Mark Rains at Station House Studio. 'City of Dreams' steps further into their versatility as songwriters, which Sean McCauley of MondoTunes describes "Sonorous, rural, and with roots wrapped deep in the rock n roll tradition, City of Dreams is an EP sure to resonate with fans of many music genres."
Desert Sparrow premiered "Drive", on October 26th, 2018 via Vents Magazine, and released the track across all digital and streaming services.
For additional press opportunities,
contact Kristen Walters here.
Desert Sparrow
Arts & Culture • Events
Thu-Sun Jan 23-26 – DISNEY ON ICE at Key Center
Arts & Culture • Events • Music
TUE APR 7 – The Ballroom Theives at The Town Ballroom (playing co-headliner with CAAMP)
TUE APR 7 – Caamp at The Town Ballroom
News and art, national and local. Began as alternative weekly in 1990 in Buffalo, NY. Publishing content online since 1996.
POMINVILLE CEREMONY: SABRES GET IT RIGHT By Andrew Kulyk and Peter Farrell
In memory of Ferruccio Lamborghini


text:
Home / Interviews / Face2Face
Interview with Rina Nathani
Rina Nathani
Head-Global Retail
Suminter India Organics
We'll launch our menswear line next year
Satva India is an organic athleisure clothing brand. Satva's parent company Suminter India Organics is one of the largest exporters of organic raw materials globally. The brand currently offers organic tops, leggings, bralettes and jackets for women made from certified non-transgenic cotton and natural dyes in India and the United States. Satva plans to launch men's athleisurewear in 2020. On International Yoga Day, Fibre2Fashion spoke to Rina Nathani, head, global retail, Suminter India Organics, about the key growth drivers of the activewear market in India.
How would you describe the activewear market in India? At what rate is it growing?
India has, in recent times, rapidly caught up with the wider global fitness trend over the past few years. Driven by the country's growing wealth, changing lifestyles and rising urbanisation, an increasing amount of Indian consumers are becoming more health conscious and are adding new health and wellness routines to their hectic lifestyles.
From 2015 to 2016, the Indian activewear market grew by 22 per cent, outpacing the segment's global increase of 7 per cent, according to Euromonitor. By 2020, it is expected to grow at an additional compound annual growth rate (CAGR) of 12 per cent with sales expected to reach $8 billion.
What factors are responsible for the growth of the activewear category in India?
The average, modern Indian consumer's lifestyle is undergoing a massive metamorphosis. Rising incomes and discretionary expenditure in urban India have allowed people to focus increasingly on health and wellness, as well as rising awareness of lifestyle diseases. The proliferation of international brands represented by sports and Hindi film stars have kept activewear in the public eye fuelling this drive as well.
Contemporary trends like taking long vacations, going on bike rides, hiking, travelling and indulging in recreational activities has been instrumental in driving the growth of outdoor, sports-inspired apparel. Most of the reputed brands in the activewear domain have a wide range of outdoor apparel that makes a significant contribution to the total brand revenue.
How is activewear different from sportswear?
Sportswear is designed for high-impact exercise, and is therefore, made from high-performance materials that are sweat-wicking, quick-drying, and usually made with built-in stretch. Activewear is designed for low-impact workouts like yoga, pilates and barre, and can also be worn as athleisure - a category of clothing that is comfortable and designed to help the wearer transition from being active to lounging. Satva's clothing works well as athleisure as the items are almost entirely made of organic cotton, which cannot be worn for intense sporting activity.
Why did you get into activewear? What was the idea behind starting Satva?
Satva is a brand that is designed in the United States and made in India. We have been exporting it to stores like Wholefoods and Paragon sports over the last five years. As the athleisurewear category is now rapidly growing in India, we decided that it was a good time to introduce it in the Indian market.
Satva was launched as an effort to offer stylish, yet socially-conscious clothing at affordable prices to a fashionable audience that is beginning to make more environment-friendly lifestyle choices. Made from the purest certified organic cotton and complemented with modern prints and designs, Satva offers organic tops, leggings, bralettes and jackets.
Satva's parent company Suminter India Organics (SIO) is one of the world's largest exporters of organic raw materials globally (including cotton) and a highly regarded, environmentally- and socially-conscious company. SIO has set out on a mission with Satva to create a symbiotic balance between people, planet, production, profits and social stewardship. It considers its impact at every step towards building a holistic, ethical and harmonious eco-system that satisfies customers, supports the economic development of impoverished farming communities and improves the global environment.
DISCLAIMER: All views and opinions expressed in this column are solely of the interviewee, and they do not reflect in any way the opinion of Fibre2Fashion.com.
Mr. Riju Jhunjhunwala
Joint Managing Director
Rajasthan Spinning and Weaving Mills [LNG Bhilwara Group)
Mr Ramazan Ozgur
Akin Tekstil
Peter Faaborg Andersen
Global Marketing & Business Development Director-Textile, Leather & Wastewater Solutions
Cotton is the main target fibre for enzymatic solutions
Mr Sanjay Lalbhai
Arvind Ltd
Andreas von Bismarck
Growing potential for India and other markets
Marty Moran
Buhler Quality Yarns Corp
Back to business in the USA
Vinod Kumar Gupta
Dollar Industries Ltd
For any brand today, online presence is a part of core sales strategy.


Python Tools for Visual Studio (PTVS) is an open source extension to Microsoft's Visual Studio development environment supporting Python development, including mixed-mode Python / C debugging. To support native code debugging, PTVS needs access to the debug symbols for Canopy's Python interpreter. The symbol file (python27.pdb) is now copied to the root directory of the User Python environment so PTVS can find it automatically. When the Canopy 1.3 update is applied, this will be corrected for existing users as well.
The symbol file is present in Canopy 1.2 installations and the file can be found in the User Python Environment "Scripts" directory (see here for default locations).
Omitted again, in error, from Canopy 1.5.3 through 1.6.0. They are back in Canopy 1.6.1 (scheduled for release around November 1).


China Galvanized Steel Coil Roll manufacturers - Select 2018 high quality Galvanized Steel Coil Roll products in best price from certified Chinese Paper Roll manufacturers, Galvanized Steel suppliers, wholesalers and factory on Made-in-China ... Gi Steel Roll Sheet Roll Steel Sheet Coil Roll Metal Roofing Roll Sheet Metal Roll Roll Gi. More.
Good Quality G90 Galvanized Iron Steel Gi Coil. Good Quality G90 Galvanized Iron Steel Gi Coil ... Galvalume steel coil and sheet , galvanized steel coil and sheet , ... Pattern Wooden Flower Blossom Roll ASTM AISI Shandong PPGI Steel Coil Color Coated Galvalume Iron Plate Az150.
GI, Prepainted Steel Coil , Corrugated Sheet , Cold Rolled Steel Coils : Mgmt. Certification: ISO9001:2008, ISO14001:2004 ... Prime Quality Hot DIP Galvanized Steel Sheet Gi Metal Roll. ... Galvanized Steel Price of 1kg Iron Steel Metal Roll Gi Coil Stocks.
GI DX51D prime quality galvanized pickled and oiled carbon hot rolled steel sheet in coil price. US $680 - 880 / Ton. 25 Tons ... Goog quality galvanized steel corrugated colored iron gi ppgi sheet specification. US $500 - 880 / Ton. 25 Tons ... Prime High Quality GI PPGI Steel Coil.
Shandong Qishun New Materials Co., Ltd. PPGI, Steel Coil, Galvanzied Steel Sheet manufacturer / supplier in China, offering Gi Coil Sheet/Galvanised Steel Sheet Roll/Hot Dipped Galvanized Steel Coil, Hot Sale Virgin HDPE (high-density polyethylene), HDPE for Making Plastic Bags and so on.
Aug 15, 2016· roofing sheet making machine . Hot sale zinc galvanized coil GI iron roofing sheet for building . DX51D Z100 galvanized steel coil for iron roofing sheet . quality 0.5*914mm galvanized steel iron coil for roofing sheet alibaba .. supply prime SGCC electro hot Dipped galvanized metal iron steel coil sheet roll for corrugated.
Galvanized Steel Roll, Galvanized Coil, Hot Dipped Galvanized Steel Coils manufacturer / supplier in China, offering Cheap Price of Prime Zinc Galvanized Steel Sheet Roll, OSB2/OSB3 Board for Construction, OSB and so on.
Prime Zinc Coating Gi Corrugated Steel Sheet Best Price Jisg3302 Z100 0.17mm Galvanized Steel Coil for Roofing. Excellent Welding Products - Trade Tools Limited Multiple-Pass or Single-Pass Welding on Mild Steel Xcel-Arc 5356 is the highest quality consistent aluminium welding wire available .
High strength quality Galvanized GI Zinc coated steel coil Details Pre-painted Corrugated Galvanized Roofing Sheet also known as SGCC color waved roofing sheet , Pre - Coated waved Steel, Color Coated roofing Steel, or Prime Pre-painted Galvanized Steel roofing sheet .
PPGI Prepainted Steel Sheet, Galvanized Steel Coil, Color Prepainted Roll Steel manufacturer / supplier in China, offering Shandong Ral Color 9010 PPGI, Color Coated Steel Coil for Roofing, 0.3-0.8mm Glazed Metal Roofing Tile, Colorbond Roof and Wall Panels, Color Steel Roof Panel/PPGI Corrugated Metal Roofing Sheet and so on.
Steel Roll, Steel Reel, PPGI manufacturer / supplier in China, offering Pre-Painted Gi Steel Sheet PPGI Coil, Galvanized Steel Plate/Gi/Galvanized Corrugated Roofing Sheet Manufacturer, PPGI JIS G3312 SGCC Galvanized Color Coated Corrugated Roofing/Steel Sheet and so on.
china lower price prime hot dipped galvanized steel coil / GI steel coil / Zinc steel First Quality Galvanized Sheet Metal Roll/Prime Hot Dipped Galvanized Steel. galvanized steel coil - Prepainted Galvanized steel coils,galvanized . shandong prime prepainted steel coil/ ppgi metal building material.
China Prime Quality Gi Steel Coils From Shandong - China . China Prime Quality Gi Steel Coils From Shandong, Find details about China Galvanized Steel Coil, Galvanized Steel Sheet from Prime Quality Gi Steel Coils From Shandong - Shanghai AIYIA Industrial Co., Ltd.


We don't care where you're coming from.
We are interested in where you want to go.
Are you smart, driven and exceptional at what you do? If the answer is yes, then we want you.
At Idyllic, we encourage creativity. We don't believe in rules. We believe in people standing up for what they believe in. Right and wrong is subjective. All that matters is being tolerant to a different point of view.
We call it common sense. Our high technological qualifications not withstanding, we provide pragmatic solutions to the pragmatic problems of our clients. Like they say, it's simple to think difficult but it's difficult to think simple.
Work is a bad word to explain what we do. Because we love what we do. We are passionate about solving meaningful problems with appropriate technologies.
Some pieces of art are timeless but some are ahead of their time.
This is what we like to imagine and try to achieve at Idyllic. Every piece of software that we design is not only technically sound but also aesthetically superior and relevantly positioned in the market place. Call it mavericks at work.
We believe work is a state of mind. So we are not overly rigid about the time and place you choose to work. Provided you do work and meet the deadlines. You'll have flexibility to work from home if need arises. Nevertheless we'll miss you at office during that friendly banter at the coffee machine.
If what you do seems like work, you're either in the wrong industry or you're not doing it right. Do what you love. Love what you do. Your time here should feel less like digging a trench and more like a challenging game of chess.
It's not about how much time you spend with us. It's about how you spend it. Our pay evaluation is entirely based on merit and your ability to value-add. We would like to put it this way: show us the money and we will show it back to you.
We conduct geek sessions with beer on every Friday. Get a bit drunk, throw ideas around, catch them, brainstorm and generally get familiar with things around you.
We understand completely. Free beer on a Friday night is an intoxicating idea. One soon loses the count of how many glasses one has downed. The idea is to avoid doing that. Get a little drunk and happy. Don't get too drunk and sloppy. Make sure that the thin line between the workplace and the pub doesn't get blurred. Cheers!
Here's the tree in the center of our workspace. The tree is a constant reminder to always stay grounded and to not get carried away by whatever happens around us. Our humility has carried us this far and we hope it stays with us for the years to come.
As a member of our team, you're sure to be thrilled with the amount of freedom you have, and the opportunities you're presented with. All you have to do is grab every such opportunity that comes your way and express your opinions openly because we certainly want to hear them.
Why did we move to Vancouver?
When our client first invited us to Vancouver, we fell in love with the city. The companies we met with were forward thinking. So we decided to move to Vancouver to serve the companies in the city better. More so, it also puts us in a good time-zone for near-shoring services to US clients.


Dr Hildich graduated from Sheffield University, UK in 1998. He obtained Membership of the Royal College of SUrgeons in 2002 and then Membership of Royal College of General Practitioners in 2005. He then worked as a full time partner in a general practice in Sheffield, UK. He immigrated to Australia in 2016 where he was graduated fellowship of the Royal College of The General Practitioners. He has recently undertaken additional training in Skin Cancer in Primary Care.
He is happy to see all aspects of General Practice and his special interests include Skin checks and skin cancer surgery, Dermatology, Men's Health, Urology and Minor surgery.


There's nothing junky about a junk drawer: It's a fantastic catch-all for odds and ends around the house, to keep them right at your fingertips should you need them in the future. Well, theoretically.
In reality, our junk drawers tend to be "I know it's in here somewhere" situations. That isn't a big deal when hunting for a purple pipe cleaner, but is problematic when looking for a receipt to return a purchase, or that halfway filled-out W-4 or roughly 20 wasted dollars in change.
Everyone's junk drawer might look different, but—whether or not yours, like ours, includes rubber bands, old thank-you notes, paper clips, spare buttons, highlighters, orphaned staples and anything else you find on the floor/counter/car seat—we'd all like to get these black holes under control.
But what if, instead of an incomprehensible jumble, it looked like this?
The best part about this impeccably organized junk drawer is that it repurposes unused things around the house ... thereby tackling even more junk ... for free.
A 99-cent ice cube tray is the perfect organizer for the little stuff: spare buttons, matches, rubber bands, hair ties, safety pins, bobby pins, beads that fell off your favorite sweater, orphaned sticks of gum and more. By picking a cube (or two) for each type of junk, we kept our littlest stuff accessible and orderly.
Don't have any? Try using egg cartons, muffin tins, cleaned tuna cans or cupcake liners instead.
We repurposed some of our least favorite teacups (that just happened to cost $1.50 each) as containers for change, lipstick, half-used Metrocards, bracelets, rings, sunglasses and more. We sorted our junk by theme (for instance, makeup and jewelry share a cup). If you don't have teacups that you want to dedicate to the cause, recycled plastic or paper cups are just as effective.
Don't have any? Try using bowls (we added one for our bigger junk), clean takeout containers or saucers.
We're big fans of going as paperless as possible (see our guide to doing that here), but the odd takeout menu and postcard tends to clutter up our junk drawer faster than we can say "recycle." The obvious answer is to invest in some 99 cent folders, but the less obvious is just as effective: freezer bags. Oversized Ziploc bags will hold nearly any document, so designate a bag per document type--one for receipts, one for takeout menus, one for notes you scribbled while on the phone. The bags are also great for unwieldy things like phone chargers and headphones.
Don't have any? Try clothespins (to keep your paper together, at least) or baking sheets to serve as makeshift desk trays (like this) instead.
For a few tips to keep you junk drawer organized after you're set up, visit the original article on LearnVest.com.


Many thanks for the generous contributions from our relatives on the occasion of our family party.
Bobby and Ryan were born 2 months premature in 2004 (bobby) and 2009 (Ryan). Due to complications at birth and immediately after and their prematurity they suffered brain damage called bilateral periventricular leukomalacia. This is when blood supply is cut off and causes white matter damage. The periventricular area deals with processing of signals and has cause spastic quadraplegic cerebral palsy. Bobby is also on the blind register due to cortical blindness, meaning that the signals from his eyes don't get to the right part of the brain to process the information so his vision isn't functional.
Ryan is incredibly tight in his legs and it restricts his movement and ability to progress further with physio. He can't sit or stand but crawls using his arm to pull himself along on his tummy he has very little movement in his legs and when he is doing activities they tighten up even more. His legs pull inwards and tend to cross at the knees making it difficult to change him and causes pain when we try to separate his legs to change and put trousers on etc.
We are in the process of getting Ryan a motorised wheelchair which will enable him to be able to go 'off road' but due to Bobby's visual impairment he is unable to have a motorised chair so we need an all terrain wheelchair to be able to join in with family activities. The boys have 6 brothers and sisters and for a while have been unable to join in most of our activities like taking the dog for a walk and going for country walks. Previously we used to take the bikes and bobby and Ryan would go in a bike trailer but they have outgrown it so for the last 18 months we haven't been able to do much of our usual activities.
Ryan needs surgery to help the spasticity in his legs, this is called selective dorsal rhyzotomy (sdr for short) this is no longer available on the nhs as of February. The surgery is on part of his spine and cuts some of the nerves so will stop the signals causing his muscles to be so tight and stop them from spasming so much so will make life in general much easier and cause less pain and restrictions for him. His physio believes that once his muscles loosen a little he will be in a similar position to where bobby is now and will enable him to work on progressing further as he has good trunk control and head control so has a good chance of working towards walking with a k walker or other aids. The surgery requires 12 months of intensive physio which may not be provided by the nhs either so this is in life's in our target amount.


Howard James Fowler Jr. and Ehab Iskander are the latest Palm Beach County halfway-house owners to be arrested by the Sober Home Task Force on alleged patient brokering charges. The two men are accused of receiving illegal kickbacks for brokering insured patients to Whole Life Recovery, a Boyton Beach treatment facility.
Fowler, 26, of Delray Beach, Florida, was arrested on Monday on 14 counts of patient brokering. He was ordered held without bond at Palm Beach County Jail until he can prove that the money he uses to post bail is legally obtained.
Iskander, 33, of West Palm Beach, Florida, was arrested on Tuesday on six counts of patient brokering. His bond was set at $18,000 and he was released once the state confirmed that the money he provided to bail out of jail was not obtained from brokering patients. The press did not name attorneys for the two men.
Iskander is the owner of Integrity House, a sober home in Lake Worth and Fowler operated Anchorage Sober Living in Delray Beach. Both facilities allegedly received illegal kickbacks from Whole Life Recovery in exchange for patient referrals.
Iskander and Fowler purportedly had patient referral contracts with Whole Life Recovery disguised as case-management services that assist recovering patients to acquire things like food stamps and bus passes.
Case-management agreements are reportedly used by treatment centers to circumvent the state's patient brokering law. The law makes it illegal for centers to "offer or pay any commission . . . kickback or bribe" for patient referrals to a specific healthcare provider.
Police claim Iskander and Fowler received weekly checks from James Kigar, the head of Whole Life Recovery. Kigar was the first to be arrested by the Sober Home Task Force last month on multiple patient brokering charges.
The task force was formed by State Attorney Dave Aronberg in July. Aronberg told news sources that these arrests mark "the beginning of cleaning up the industry." Marketers and halfway-house operators have reportedly made millions of dollars brokering insured addicts to treatment facilities in South Florida.
The practice is reportedly so widespread, some sober home operators don't even know that it's illegal.


One of my favourite books is Charles Handy's 'The Age of Unreason' where he puts forward some unreasonable ideas to solve problems. Using unreason can be both simple and effective but it also appeals because I like to find solutions that are right under other peoples noses. When there is a complicated problem to solve, many people will look for a complicated solution as if one must go with the other. Sometimes the elegant (and simple) solution can be found using unreason. Consider a common problem, that of traffic on our motorways. In order to get more cars along a given stretch of motorway we often have campaigns to increase the speed limit. Our motorways are not just race tracks. They have junctions, accidents and many different vehicles and driving styles which cause disturbances in the traffic. Often reducing the speed limit (as seen on many of our UK motorways with variable speed limits) actually decreases journey times. So in order to solve many of our business issues we could accept less money, work less hours or reduce our profits. At home we could buy smaller houses or hoard less possessions! In short we could stop looking for innovative solutions in the same place as everybody else. We could actually look for the wrong answers and maybe turn up a right answer or two.


text:
using System;
using NUnit.Framework;

namespace Projac.Tests
{
    [TestFixture]
    public class ConcurrentResolveTests
    {
        [Test]
        public void WhenEqualToHandlerMessageTypeHandlersCanNotBeNull()
        {
            Assert.Throws<ArgumentNullException>(() =>
                ConcurrentResolve.WhenEqualToHandlerMessageType(null));
        }

        [Test]
        public void WhenEqualToHandlerMessageTypeResolverThrowsWhenMessageIsNull()
        {
            var sut = ConcurrentResolve.WhenEqualToHandlerMessageType(new SqlProjectionHandler[0]);
            Assert.Throws<ArgumentNullException>(() => sut(null));
        }

        [TestCaseSource(typeof(HandlerResolutionCases), "WhenEqualToHandlerMessageTypeCases")]
        public void WhenEqualToHandlerMessageTypeResolverReturnsExpectedResult(
            SqlProjectionHandler[] resolvable,
            object message,
            SqlProjectionHandler[] resolved)
        {
            var sut = ConcurrentResolve.WhenEqualToHandlerMessageType(resolvable);
            var result = sut(message);
            Assert.That(result, Is.EquivalentTo(resolved));
        }

        [Test]
        public void WhenAssignableToHandlerMessageTypeHandlersCanNotBeNull()
        {
            Assert.Throws<ArgumentNullException>(() =>
                ConcurrentResolve.WhenAssignableToHandlerMessageType(null));
        }

        [Test]
        public void WhenAssignableToHandlerMessageTypeResolverThrowsWhenMessageIsNull()
        {
            var sut = ConcurrentResolve.WhenAssignableToHandlerMessageType(new SqlProjectionHandler[0]);
            Assert.Throws<ArgumentNullException>(() => sut(null));
        }

        [TestCaseSource(typeof(HandlerResolutionCases), "WhenAssignableToHandlerMessageTypeCases")]
        public void WhenAssignableToHandlerMessageTypeResolverReturnsExpectedResult(
            SqlProjectionHandler[] resolvable,
            object message,
            SqlProjectionHandler[] resolved)
        {
            var sut = ConcurrentResolve.WhenAssignableToHandlerMessageType(resolvable);
            var result = sut(message);
            Assert.That(result, Is.EquivalentTo(resolved));
        }
    }
}


text:
The 100 Year Revolution of Women's Football
Jan 13, 2021 | Ish Bautista
Though traditionally thought of as a man's game, football is historically been played by women too, in fact, women have been playing football since its first recorded reports in the Han Dynasty in China in 25-200 CE. Football was called Tsu Chu and the opponents had to use their legs only without using their hands to catch the ball.
The name literally translated to kicking the ball with the feet and chu means a ball stuffed with leather. Later on, football progressed and made its way into Scotland in the 1790s where the first report of a match took place. It's also believed that in Europe, the 12th-century French women played football as part of the folk games that took place in their villages.
Making its Way Into Britain
Football then made its way into Scotland where the first match was finally recorded by the Scottish Football Association in 1892 in Glasgow. The country that took women's football by storm is the United Kingdom where the British Ladies' Football Club was founded and later on flourished and inspired multiple women to play more football. In the first World War, women's football was surprisingly a hit. When employment went down, more women were interested and had time to play ball.
How It Grew The growth of women's football boomed after the World War and by 1929, 41,000 people gathered at a women's football match in Adelaide Australia. Women who would break their backs working in steel mills and farms in World War 2 would also play as football fundraisers. By the year 1950, football was being played in almost 20 towns around Tasmania, and female teams were growing into established clubs. Even though women were actively engaged in the sport, it was only in 1981 where the formation of the Victorian Women's Football League finally emerged.
Women's football has encountered so many struggles, even being banned at some point in 1921 by the FA where women weren't allowed to play recreationally. In 2019, the eighth tournament of the FIFA Women's World Kick off launched and there were over 24 different women's teams. Women's football is truly gaining the well-deserved recognition it deserves after years of hardship and prejudice.
The Wisdom Segment - Sports
I Edson Arantes do Nascimento better known as Pele is regarded all over the world as the greatest soccer player of all time. He holds the record for the most goals scored, with a remarkable 1,279 goals kicked between 1956 and 1977.
II Pele has a younger brother named Dondinho as well as a younger sister named Celeste. He was raised by a father who played professional soccer with Fluminense and trained Pele on the fundamentals of the game in their backyard.
III Pele developed experience playing soccer via indoor Futsal games against adult players during his teenage years. Playing professionally for Radium in the Futebol de Salo championship helped Pele develop the poise he is famous for.
IV Pele managed to deliver an especially exciting first-day performance for Santos against Corinthians Santo Andre on the 7th of September, 1956, at the age of 15. After just a single year, Pele was already offered a spot in the starting line-up for his team.
V Pele was chosen as part of Brazil's national soccer team at just 16 years of age and represented the country during the 1958 World Cup, facing the Soviet Union team on the 15th of June that year.
VI The moment he scored a hat-trick of goals during the semi-finals battle with France, Pele likewise managed to become the youngest to accomplish such a feat in the history of the tournament. His country secured the victory and advanced to the World Cup Finals.
Ancient Sports That Are Completely Terrifying
Ancient humans had their competitive games which pitted teams against each other, often with bloody results.
Rouella Midel-Bagiscan | January 11, 2021
Why Outdoor Winter Exercise is Good for You
The cold winter weather does not only make us feel more sluggish, but it also makes us want to eat more. But don't let the low temperature stop you from going outdoors and..
Ish Bautista | January 10, 2021
Remembering Heavyweight Champion Joe Louis
he legendary boxer has an interesting story and made a huge impact on both boxing and civil rights.


text:
Q: center float left for QuickSearch I would like to center div for QuickSearch with several Q & A but no luck. The div is float left with background image.
HTML

    <form action=>
xxx
</form>

CSS
.QuickSearch {
  background: url(/templates/_system/main/images/job-search-bg.jpg) no-repeat top left;
  float:left;
  width:900px;
  height:170px;
  display:block;
  text-align:center;
  margin: 0px auto 0px auto;
}

.loop {
  /* background: url(quickSearch.png) no-repeat;*/
  width: 10px; height: 135px;
  display: block;
  float: left;
  margin: 0 0 0 2px;
}

l-row {
  max-width:942px;
  width:100%;
  min-width:942px;
  text-align:center;
}

A: Well, you have an element with fixed size here, so I suppose you should follow the classic:
.loop {
  width: 10px; height: 135px;
  ...
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -67px;
  /* taking into account that margin-right: 2px in the original ruleset */
  margin-left: -3px;
}

Check this fiddle (had to alter it somewhat, using plain colors instead of images for  backgrounds).

redpajama_set_name: RedPajamaStackExchange


text:
Topic Data center servers
SubTopic Mainframes
Microsoft Windows Server in the data center
Third-party software costs killing mainframe growth
A new Gartner survey reflects mainframe trends in third-party software costs, Linux adoption and IBM's struggle to bring new blood to the platform.
Attendees at the annual Gartner Data Center Conference sounded off in a survey published by the Stanford, Conn.-based analyst firm this week. Mainframers weighed in on third-party software costs, Linux on the mainframe, IBM's efforts to get new blood in the job market and more.
Third-party mainframe software costs
For four years running, attendees at the Gartner conference listed third-party software costs as the No. 1 inhibitor to mainframe growth, according to Gartner analyst Mike Chuba.
More mainframe news:
Mainframe year in review 2006
Mainframe TCO getting more bang for the buck, analyst report says
The third-party mainframe management vendors like CA Inc., BMC Software Inc. and Software AG have historically priced software based on the computing capacity of the machine. So mainframe shops with third-party systems management tools often face a hefty upgrade fee from their vendors when they buy new hardware -- regardless of how much capacity they will actually use.
"This is the tail that wags the dog on mainframe procurements," Chuba said. "In many situations, customers make decisions on what hardware they're going to buy based on their existing software contracts."
To combat the problem Big Blue has invested in systems management tools over the past few years, bringing more competitive pricing into play. Also, some systems management vendors are starting to do more subcapacity pricing, for example, CA has rolled out usage-based pricing plans in recent years.
Despite those gains, 38% of the mainframers surveyed said third-party software costs were the No. 1 inhibitor to mainframe growth in their organizations. Not that IBM's report card was a lot better -- 20% of attendees said IBM's software costs were holding their organizations back from more mainframe usage. And another 16% reported that upper management's perception that the mainframe is outdated was the problem.
Linux lags on Big Iron
The audience panned Linux on the mainframe in this survey -- a whopping 78% said that they hadn't tried Linux, tried Linux and didn't like it or implemented Linux and didn't use it. Of the remaining 22%, the majority of those shops were using Linux as a consolidation platform for Web-serving, mail or print/file applications.
"I was a little surprised that the audience didn't reflect bigger uptake on Linux adoption," Chuba said. "I've asked that question over the last several years, and that percentage is about the same as last year."
Chuba said conversations with customers in the past year suggested that there was momentum for Linux in 2006. Chuba cited Nationwide Insurance as an example.
In a session at the Gartner conference last November, the Columbus, Ohio-based insurer detailed its project of replacing hundreds of small servers with two IBM z9 mainframes. The mainframes were running the Integrated Facility for Linux (IFL), a specialty processor that enables the mainframe to host 40 Linux virtual servers.
"I definitely think there is demand for Linux on the mainframe," Chuba said. "I don't know that the survey mirrored what happened in 2006."
IBM System z specialty engines gain ground
While Linux lagged in the survey, survey takers have embraced IBM's specialty engines -- the System z Integrated Information Processor (zIIP) and the System z Application Assist Processor (zAAP).
The zIIP is designed to accept work from z/OS, which manages and directs the work between the general purpose processor and the zIIP. IBM said it will free-up general computing capacity and lower software costs for workloads, such as business intelligence, enterprise resource planning (ERP) and customer relationship management (CRM) on the mainframe. IBM will not impose software charges on zIIP capacity.
According to IBM, the zAAPs are designed to operate asynchronously with the general processors to execute Java programming under control of the IBM Java Virtual Machine. This can help reduce the demands on general purpose processors, which may then be available for reallocation to other mainframe workloads.
The survey showed 40% of attendees were already using IBM specialty engines and 62% of attendees said they would be using specialty engines by next year.
Chuba said he expects IBM to keep going, introducing more new specialty engines as soon as possible. "It wouldn't surprise me to see a couple new engines introduced in '07," Chuba said. "They need to come up with another acronym though. The zAAP, zIIP thing has pretty much run its course."
Graying of the mainframe personnel
Experts have predicted a looming brain drain on mainframe skills as the bulk of the mainframe workforce marches toward retirement. Over the past year IBM has beat the drum on its academic initiative to bring new blood to the platform. While 14% of the survey takers were working with local colleges within the program, 38% had never even heard of it, and another 24% said it was too little too late.
"I know IBM is doing its darnedest to get the message out there, but I don't know that it's being heard," Chuba said. "It's one of the things we've told IBM over the last 12-18 months, whatever efforts they're making, there is more groundwork to be laid."
Part of the reason Chuba thinks the issue hasn't become more pressing is because the problem hasn't peaked yet. "People seem more inclined to work longer. I don't think we're there yet in crisis mode. Most people are still talking about this as seeing it on the horizon."
Hybrid System z machines becoming available
One of the final trends that the survey examined was IBM's pitch of "hybrid" System z machines. IBM's hybrid approach takes an earlier model z990 that came off of a lease somewhere, upgrades it to the current model and certifies the machine in factory tests.
Only 16% of the audience said that IBM had bid a hybrid system to them in 2006. IBM doesn't want to sell too many used z990s because they compete against new sales -- especially after spending $1.2 billion to develop the z9. But the hybrid approach works for the cost-sensitive customer, and it helps IBM's global services arm to unload Big Iron inventory.
According to Chuba, hybrids are going to be more central to IBM's marketing strategy. Customers who can't justify paying $2,000 per MIPS can get a hybrid at around $1,100 per MIPS.
"If I'm in that situation where I need 1,000 or 1,500 more MIPS, I would certainly ask IBM why they aren't bidding a hybrid," Chuba said. "One of the gating factors is the availability of boxes. There may only be a certain number of z990s coming off inventory at one time."
Let us know what you think about this article; e-mail: Matt Stansberry, Site Editor
Dig Deeper on IBM system z and mainframe systems
IBM System z Application Assist Processor (zAAP)
IBM Integrated Facility for Linux (IFL)
IBM System z Integrated Information Processor (zIIP)
What the IBM and Neon settlement means for mainframes
By: Robert Crawford
Leverage Public Cloud to Improve DR and Business Continuity –IBM
Looking to Maximize DevOps Productivity? Here Are Key Public Cloud Capabilities... –IBM
IBM mainframe zIIP and zAAP adoption still lags IFL ... – SearchDataCenter
Mainframe savings with zIIP, zAAP could go beyond DB2... – SearchDataCenter
IBM System z Integrated Information Processor (zIIP) – SearchDataCenter


Problems with SqueezePad and Server version 7.6.0 (fixed in 7.6.1) It's all about knowing your music! SqueezePad 1.9.0 hits the App Store!
Just wanted to let you know that your app is great. I have all 3 iPad apps and yours is the one I prefer. Keep up the good work.
There is an easy fix: please enter the settings screen of SqueezePad and reenter your server address.
This should be fixing the crash when you try to open the player window.
The bug will never come back after you changed it once.
Just updated to 1.8. Very nice new features! Didn't even know the biography existed.
Is this a 'known' issue or am I doing something wrong?
are you using Logitechs App or the plugin from triode to use Spotify?
SqueezePads playback only works, when triodes plugin is installed on your server. With a 7.5 server you'll then find Spotify under the Radios menus, with 7.6 under MyApps.
Reason is, that Logitechs App only sends encrypted streams, triodes plugin decrypts already on the server.
I'm using the 'offical' Logitech Spotify app; can I conclude from your reply that at this point in time this will not work, and that the work-around is using the triode plugin (= http://forums.slimdevices.com/showthread.php?t=79706)?
yes – SqueezePads playback is only compatible with triodes plugin for Spotify for now and the foreseeable future.
Hi great app, but I just have one small problem.
When I use my iPad as the player I can't play any songs with Napster this problem is only with the iPad when playing through the squeezebox receiver Napster plays fine.
With the iPad as the player the song plays for a few seconds before skipping to the next track and there's no sound.


text:
Q: Storing data into an array list and then binary search tree I have a homework assignment where I need to load patient data into a node, then be able to search through the tree. The node will store patient name, doctors name, their current appointment, and there next annual appointment date. The data is read in from a text file. I want to use an arrayList to store the data into the nodes, but the confusing part is how can I store just the certain data of the arrayList into each node? (I hope that makes sense). I posted a day or so ago and had some help to create a patient class and then store that inside the node and then array list. But I am still lost in exactly how I could implement that. Keep in mind I am horrible at BST's O.o. And I chose to use an arrayList over LinkedList since I am more comfortable using those.
This is my class for reading in my text file...(Array implementation isn't complete).
public class readFile {
    private Scanner x;

    public void openFile() {
        try {
            x = new Scanner(new File("patients.txt"));
        } catch (Exception e){
            System.out.println("Couldn't find file!");
        }
    }

    public void readFile() {

        ArrayList<String> data = new ArrayList<String>();
        while(x.hasNext()) {
            String PatientName = x.next();
            String DoctorName = x.next();
            String currentApp = x.next();
            String NextApp = x.next();
        }
    }

    public void closeFile(){
        x.close();
    }

}

And here is my tree class
public class Tree {

    Node root;

    public void addNode(int key, String patientName, String DocName, String currentApp, String nextApp){
        Node newNode = new Node(key, patientName, DocName, currentApp, nextApp);
        if(root == null) {
            root = newNode;
        } else{
            Node currentNode = root;
            Node parent;
            while(true) {
                parent = currentNode;
                if(key < currentNode.key) {
                    currentNode = currentNode.leftChild;
                    if (currentNode == null){
                        parent.leftChild = newNode;
                        return;
                    }
                } else{
                    currentNode = currentNode.rightChild;
                    if (currentNode ==null) {
                        parent.rightChild = newNode;
                        return;
                    }
                }
            }
        }
    }

    public void Traversal(Node currentNode) {
        if(currentNode != null){
            Traversal(currentNode.leftChild);
            System.out.println(currentNode);
            Traversal(currentNode.rightChild);
        }
    }

    public static void main(String[] args){
        Tree binaryTree = new Tree();
        readFile read = new readFile();
        read.openFile();
        read.readFile();
    }
}

class PatientData {
    String patientName;
    String DocName;
    String currentApp;
    String nextApp;

    public PatientData (/*Get parameters*/) {
         /*Set parameters to members*/
    }
}

class Node{
    int key;
    PatientData patient;

    Node leftChild;
    Node rightChild;

    Node(int key, PatientData patient){
        this.key = key;
        this.patient = patient;
    }

}

This is the text file
Baker, William,     Chavez,     04/01/05,   04/10/06
Sanchez, Jose,      Chavez,     06/15/05,
Anderson, Robert,   Wong,       04/02/05,   03/30/06
Watson, David,      Chavez,     05/03/05,   04/28/06
Chung, Yu,      Gilbert,    07/10/05,
Griffin, Sandy,     Gilbert,    06/20/05,   06/20/06
Marcus, Wendy,      Wong,       08/02/05,   08/03/06
Williams, Rebbeca,  Chavez,     08/10/05,   08/11/06
Kennedy, Fred,      Wong,       07/16/05,   07/15/06
Henderson, Paul,    Wong,       02/15/05,
Tucker, Matthew,    Wong,       04/10/05,   04/11/06
Coombs, Jean,       Gilbert,    05/01/05,   04/10/06
Earl, Gary,     Gilbert,    06/03/05,   05/10/06
Atkins, Anthony,    Chavez,     09/10/05,   09/11/06
Garcia, Jesus,      Chavez,     10/10/05,
David, James,       Wong,       02/02/05,   02/03/06
Young, Ed,      Gilbert,    07/09/05,   07/10/06
Jones, Richard,     Gilbert,    08/01/05,   08/10/06
Peterson, Jerry,    Wong,       06/02/05,   06/03/06
Arnold, Belinda,    Chavez,     01/10/05,   01/11/06
Franklin, Jason,    Wong,       09/12/05,   09/13/06
Trent, Joseph,      Gilbert,    03/12/05,
Valdez, Tomas,      Gilbert,    10/15/05,   10/10/06
Gent, Charles,      Wong,       10/22/05,   10/11/06
Roper, Joan,        Chavez,     03/10/05,   03/21/06
Lopez, Ricky,       Wong,       03/24/05,   03/25/06
Henry, Sarah,       Gilbert,    04/18/05,   04/17/06
Nathan, James,      Chavez,     06/10/05,   08/11/06
Ulvan, Rachel,      Chavez,     09/10/05,
Mears, Sally,       Wong,       05/05/05,
Edwards, Sam,       Gilbert,    05/21/05,   05/22/06
Rubino, Ian,        Gilbert,    07/24/05,   07/21/06
Osborn, Janet,      Chavez,     07/10/05,   07/11/06
Barton, Michael,    Chavez,     10/10/05,   10/16/06
Quinn, Pat,     Gilbert,    08/27/05,   08/29/06
Inglis, Peggy,      Wong,       08/30/05,   08/29/06

A: You don't need an ArrayList as intermediate storage; the way I understand the assignment you should directly populate your trere with the data from the file. Therefore, just read each patient from the file and add it to the tree, like so:
public Tree readFile(Tree tree){
    int key=0;
    while(x.hasNext()){
        String patientName = x.next();
        String doctorName = x.next();
        String currentApp = x.next();
        String nextApp = x.next();
        tree.addNode(key++, patientName, doctorName, currentApp, nextApp);
    }
}

I took the liberty of introducing a key which is basically just the record number.

A: The assignment text indicates that you probably should sort the tree by appointment date (compare the dates rather than the keys.
You might also keep 3 trees, one for each doctor, e.g. by using a map (if you are allowed).
Then the operations are implemented quite easy:

*

*"search for patients with appointments within next week by doctor's name" - get the tree for the doctor from the map then extract the subtree (nodes) whose appointment date is between now (today) and now + 7 days

*"search for patients that need an annual appointment by doctor's name" - same as above but get all whose appointment date is lower than now - 1 year.

*"search for any patient ..." the same as above just search in all 3 trees and combine the results in a list

*"edit a patient's appointment" - this would mean resorting the tree, the easiest way to achieve that is probably to remove and reinsert the node (you can thus reuse your sorting code)

*"delete a patient" - you'd either need to maintain another tree which is sorted by name/id and use the appointment date to look up the corresponding nodes in the other trees (note: you might get more if the dates are the same) or just iterate over one (all) tree and remove any matching node


text:
THE MANEATER
City On Campus Student Politics University
Baseball Club Sports Cross-Country Football Golf Gymnastics Men's basketball Soccer Softball Swim and Dive Tennis Track and Field Volleyball Women's basketball Wrestling
Columns Editorial Board Letters to the Editor
FEEDBACK EDITORIAL STAFF WORK FOR US ADVERTISING INFORMATION
Columbia resident arrested on suspicion of child porn
Detective Tracy Perkins said the issue is common in Columbia.
By Dani Kass
A Columbia resident was arrested by the Boone County Sheriff's Department on June 10 on suspicion of possession of child pornography.
According to a news release by the Boone County Sheriff's Department Cyber Crimes Task Force, in mid-February, a Task Force investigator discovered that a computer in the Columbia area was offering child pornography through the file sharing service Gnutella. The Task Force was able to trace the IP address of the computer to 47-year-old Joseph Kreiser.
Kreiser was charged with one count of possession of child pornography. He was arrested with bail set at $10,000. According to the Boone County Sheriff's Department 07:00 Report, he has not posted bail.
On March 2, a court-ordered search warrant took place at Kreiser's address.
"During this search several items were seized," the news release stated. "A subsequent examination of the items seized located over 60 images of pre-pubescent children. The investigation also identified the person to be responsible for the possession of these files."
Detective Tracy Perkins is the lead detective on this case. She said Kreiser was arrested following a forensic investigation.
"If we're able to obtain enough information during our search warrant, sometimes we're able to arrest them on the scene," Perkins said. "Sometimes we're not able to do that, so then we have to take it back to our lab here at the Sheriff's Department and use the analysis of those devices."
Perkins said she is unsure about what the punishment will be if Kreiser is found guilty.
"Sometimes they get probation (and) they have to complete what they call a sex offender class, like a 120-day class," she said. "Then sometimes people get years, they don't even get that option. It varies."
Perkins said that this is a common problem in Columbia.
"It happens all the time," she said. "As the Cyber Crimes Unit, this is what we deal with every day."
According to the news release, The Cyber Crimes Task Force is comprised of investigators from the Boone County Sheriff's Department, the MU Police Department and the Federal Bureau of Investigations.
Share: Facebook / Twitter / Google+
This item does not have any approved comments yet.
Please provide a full name for all comments. We don't post obscene, offensive or pure hate speech.
> WEBSITE
> COMMENT
Tweets by TheManeater
© 2017 The Maneater Student Newspaper
UNews
Missourian
Order a photo
MOVE Magazine


text:
New terminal a big relief
By Henry Dubroff / Wednesday, August 17th, 2011 / Comments Off on New terminal a big relief
Note: Editor Henry Dubroff sent a quick update after his first flight through the new $54 million Santa Barbara airport terminal:
The game of Santa Barbara hold 'em is over.
The city's new airport terminal had a business-as-usual attitude as operations were well under way on the second day of a full schedule. Most welcome were lavatories that were fully functioning in the boarding area (previously, if you had checked in through security and had to go, you were plain out of luck).
Vendors reported a few technical glitches with register scanners, airline staff said handling new procedures was time-consuming, and the boarding area temperature was warm.
But Santa Barbara has its first new airport since World War II.
Previous story, published August 17, 2011:
Santa Barbara's latest and most engaging twist on Colonial Revival architecture will open to the public on Aug. 18 as the city's new airline terminal becomes operational.
The terminal is the lynchpin of a $54 million terminal improvement project that's been in the works for more than two years.
Designed by area architect Fred Sweeney, the terminal features a post-modern take on the stucco-and-red-tile motif that has come to signify Santa Barbara style. The airport features new amenities such as departure lounges equipped with lavatories, streamlined check-in counters and jetways to speed loading and unloading of passengers.
Despite handling around a million comings and goings a year, the old terminal had no bathrooms after the security checkpoint, and passengers were required to walk in the open to their aircraft during inclement weather.
The improvements also feature a new short-term parking lot and will include refurbishment of the existing 1942 terminal. The new terminal expects to achieve LEED gold certification once all of the improvements are done.
Santa Barbara Airport officials said that with the opening of the new terminal, the rest of the improvement projects will begin with final completion expected next spring. As part of the final phase, the airport will restore a full complement of long-term parking places, reducing the use of the overflow parking lot on Hollister Avenue.
Yardi buys insurance firm
Experts tackle making money off digital music and movies
Henry Dubroff
Chairman & Editor
View all articles by Henry Dubroff »
Wells Fargo awards grants to small businesses hurt by wildfires
Tri-county legislators have bills pending
Dispute over three letters a sign of the times in SB


The question of how much data an individual should share was a key theme of Tim Berners-Lee's keynote speech at IP Expo in London.
"We need to make systems more open, because medical research on patient data is really important," he said.
Commenting on the US Patriot Act and spy agencies tapping internet traffic, Berners-Lee said: "I think surveillance is inevitable but not acceptable. We need a system built where there is an agency that watches the watchers."
He also warned there needed to be a change in attitude. "Big data leaves a lot to be desired. We have to move on to a world with different attitudes," he said.
"We see gruesome things and people will try to exploit it, but the web is not there to judge. It would be terrible if we had a web where you could only do nice things," he said.
Some people argue the only way to protect the web is to make a walled garden of safe content, but Berners-Lee disagreed. "The world I see is predicated on an open neutral network," he said.
While the web is often criticised for being insecure, he argued it would not have succeeded if security was watertight.
Looking at the global adoption of email, which is analogous to how the web has spread, Berners-Lee said: "It would have been really interesting if the email protocol needed a public key. It would not have taken off.
"We have to fit in security after the fact, but it would not have worked any other way," he added.
He did not agree with the right to be forgotten on the internet, since it went against freedom of speech. While libel and slander legislation are there to protect people when the information about them in the public domain is wrong, he said: "The idea information that is true is expunged from public record is repugnant."


Super wine bar and elegant dining in the heart of Bawtry.
Did you know ... that Doncaster Rovers chief John Ryan frequents Caviars and has done TV interviews in 2011 from the wine bar!
Free road side parking outside the restaurant and in the market square in Bawtry after 8pm.
Want to know when your comment on Caviars Restaurant and Wine Bar has been approved? We won't use it for any other purpose. If you don't wish to receive any email, please leave it blank.


text:
Global Jewish peoplehood
The Jews we don't see and don't fund – and why they matter
Barbara Birch
What happens to the two million Jews who make up 15 percent of world Jewry and live outside North America and Israel, often in places with systemic economic challenges and deep-rooted antisemitism?
Jewish philanthropy in the United States is directed largely to two regions: North America––home to the majority of Jews and the majority of fundraising dollars––and Israel. It's understandable that donors focus on supporting their local communities and the Jewish homeland. But since the U.S. has such a significant amount of the world's wealth, plus cultural and tax incentives which encourage philanthropy, the rest of the world's Jews face a significant disadvantage. What happens to the two million Jews who make up 15 percent of world Jewry and live outside North America and Israel, often in places with systemic economic challenges and deep-rooted antisemitism? Jewish communities all over the world are important to present and future Jewish life everywhere, and if we don't support them now, we fail to look out for our fellow Jews and lose the opportunity to ensure a diverse and thriving global Jewish community.
Nearly half a million Jews live in France, 300,000 in the United Kingdom, and significant populations in Argentina, Russia, Brazil, South Africa and Ukraine, with a smaller Jewish presence in nearly 70 other countries. These Jews represent the cultural, religious and ethnic diversity of the Jewish people, yet many are only marginally affiliated with Jewish life. Those who do not identify as Orthodox have few opportunities to explore and connect with their Judaism, putting them at risk of losing touch with their Jewish identity. We need to invest in strengthening these Jewish communities.
By supporting global Jewish communities, we not only fulfill our responsibility to support Jews wherever they live and halt the trend of shrinking Jewish populations, but we also ensure Jewish diversity, encourage Jewish engagement and fight antisemitism.
American philanthropy can fuel a resurgence of global Jewish life, especially in Eastern Europe, countries of the former Soviet Union, and other communities that can't support themselves. Consider Latin America, which is experiencing an ever-worsening economic crisis. Argentina, Brazil and Venezuela, home to a few hundred thousand Jews, suffer unemployment and inflation, not to mention the humanitarian challenges in Cuba, where no one has been able to travel to bring in critical medical and other needed supplies for a year and half.
We celebrate the contributions of Jews of different backgrounds who represent the vast tapestry of the Jewish people. But we tend to focus on Jewish diversity in the United States. What about the Jews living in their countries of origin and what about their deep-rooted cultures, customs and traditions? In those places, Jews maintain their cultural legacy by living it, not through memories and homages to their grandparents who came from Ukraine or Morocco and likely get watered down from one generation to the next. Let's support those Jews who sustain their authentic cultures at home and don't choose to move to Israel or North America. In a world of digital connectivity, ease of international travel and a global economy, we are not so far removed from our fellow Jews. We should see them, appreciate them, and compare our similarities and differences. We should also make sure they remain strong.
Combatting global antisemitism should include so much more than providing Jewish communities with security in the face of fear. Let's also give them what they need to be vibrant, strengthening their pride and joy in their Jewish identity. We need to provide security where and when it is needed while simultaneously building positive Jewish identity that will be displayed proudly. This is what we do at home, support our Jewish schools, synagogues, JCCs and myriad other Jewish organizations. Let's support Jewish education and Jewish experiences in other countries as well.
I admit that I only recently incorporated this thinking into my own philanthropy. When I consider my giving, first I think about causes such as health, hunger, education and Jewish life. Then I think about my local New York community, the United States, and Israel. Until recently, my support did not extend directly to Jews in other places. While gifts to local federations, for those of us who choose to support them, generally include an allocation to "Israel and Overseas," those allocations have been trending downward for years as federations take more control of where dollars are directed rather than relying on the collective distribution. And while many donors can articulate the need to support a Jewish homeland, many have less conviction regarding Jews in other parts of the world, understanding their needs only in terms of critical care, such as food for the elderly. Our giving perspective needs to be wider, going beyond hunger and survival; we also need to show our commitment to global Jewry by supporting organizations that help Jewish life thrive.
Many of the Jewish communities around the world are shrinking and at risk of disappearing. I, for one, hope to visit my fellow Jews in many countries in the coming years, and I want to participate with them in their Jewish customs and culture, attend synagogue services, visit Jewish schools, meet local leaders of Jewish community centers. I do not want to limit myself to Jewish cemeteries, museums, and buildings with mezuzot and see only what once was. This means dedicating some of my philanthropic support to the organizations that strengthen Jewish life abroad. I want to see these Jewish communities thrive and ensure we continue to have a global Jewish Peoplehood. I call upon all of us to open our eyes wider and direct more of our giving to the Jews we rarely see.
Barbara Birch is president and CEO of ORT America. ORT is a global education network driven by Jewish values and innovation, committed to building strong viable Jewish communities while preparing students for self-sufficient futures.