Created a new database and imported mysql from backup. Because of some other issues I had tried to add a cnx. I believe it happens when you have foreign keys to larger tables which takes time. In short, not enough information. Would you like to answer one of these instead? Start by checking whether issuing the query again kills the server again.
Either one of these statements sends a single request to the server irrespective of the number of rows to be inserted; thus, you can often avoid the error by reducing the number of rows sent per or. You will have overhaul ibdata1. The error code is 2013: Lost connection to the mySql server during the query. As for the error message, on timeout there's nothing that can be received or sent. The problem comes the table that is corrupt. Sometime you may see an error, and that confirms that you need to increase.
Most of the data is in one table. When I do ls -l the file size is always identical. And if there are maximums on the server sides that cannot be overridden by mysqldump, then there is a design flaw in the server. Note: nothing changed in records as you the simple data file was moved. Either way, if a dump fails, the error message must tell you exactly why. Apart from anything else that you need to fix, set your client to auto- reconnect. Specifically, it appears to be a faulty hard drive.
It is not reviewed in advance by Oracle and does not necessarily represent the opinion of Oracle or any other party. The client didn't get an error when writing to the server, but it didn't get a full answer or any answer to the question. The only difference with the files was their size. On the bug page and can click on: And read it directly in my browser. Then this device would reject any future packet that claims to belong to the dropped connection.
This option is enabled by default. This logs some of the disconnected errors in the hostname. I was also not able to mysqldump my table because some rows broke it. Browse other questions tagged or. You may try executing innodb recovery on your server, or you can remove the database and database files manually from that location, create a similar database with same name and then restore the database from the backup on it. Or if you've verified it isn't the case, then it might be the setting due to which the client is losing connection.
Does either machine have a firewall active? I ran into this while running a stored proc- which was creating lots of rows into a table in the database. You can use it to make the network connection look less idle. And since then our backups fail sometimes. Provide details and share your research! Error log is correct now. After the innodb is fixed, you can then remove it properly. I will speculate that you do not have backups, since creating backups would have encountered this same error.
More rarely, it can happen when the client is attempting the initial connection to the server. You may also need to increase the maximum packet size on the client end. The files must end with '. This may happen if you have been using the commands: or. In this case, you normally get one of the following error codes which one you get is operating system-dependent.
If i try to start mysql that drop lot of nulls on screen and a goodbye. It is, more than likely, the data dictionary entry within ibdata1. A side tips is to use which is backed by scikit-learn project. There are also regarding this problem. Even after raising timeouts, mysqldump fails nearly every night.
To disable it, use --skip-network-timeout. One would upload just fine and then the database update would take place using a prepared statement. In my case I lost 10 rows of data because i had to skip these corrupted rows. Maybe this will help someone else as well? Both versions are currently parsed. In this case i have no test.
This logs some of the disconnected errors in the hostname. I tried setting to 1024M too. So we looked at how to get your data back from simple Innodb Table Corruption. I am guessing it was some client side connection that I could not spot in Workbench. Collect all table names that do not crash mysqld when you attempt to run the count. Be aware that this log type is a performance killer.


We present the differential cross section for coherent ρ0 photo-production at mid-rapidity (−0.5 < y < 0.5) measured by the ALICE experiment in Pb-Pb collisions at √sNN = 2.76 TeV at the LHC, as well as the total ρ0 cross section obtained by modelbased extrapolation to all rapidities. These cross sections are compared to various model predictions, as well as to earlier measurements at RHIC. In addition, we present results on nuclear breakup in coincidence with coherent ρ0 photo-production.


text:
Innovative. Thoughtful.
Engaged in matters of consequence.
These characteristics are embedded in the DNA of Duke University's Sanford School of Public Policy. For 47 years, this has been a gathering place for people with the vision and energy to work for a better world. The Duke Sanford School of Public Policy is pleased to announce faculty appointments for 2019-2020.
Fenaba Rena Addo
Visiting Assistant Professor
Researches wealth and education inequality, and the intersections of economics, well-being and health.
Abdullah T. Antepli
Associate Professor of the Practice of Public Policy
Works on faith-based peacemaking initiatives and was Duke's first Muslim chaplain.
Nathan A. Boucher
Assistant Research Professor
Studies the experiences of patients and caregivers with health care delivery during advanced illness, especially care for veterans.
Lisa Gennetian
Visiting Associate Professor
Former research professor at New York University, studies child poverty and early childhood interventions.
Visiting Professor of the Practice
Is an expert in cybersecurity and privacy law and was associate general counsel and global privacy officer at Intel Corporation.
Assistant Professor of Public Policy
Researches how regulations, policies and shifts in the labor market affect working conditions in the United States.
Asher Hildebrand
Was previously the chief of staff to U.S. Representative David Price and has expertise in American politics, democracy reform and foreign policy.
Matthew Perault
Associate Professor of the Practice
Is the director of the new Center for Science, Technology & Policy. Previously, he was the head of global policy development for Facebook.
Pamela and Jack Egan Visiting Professor
Writes on American politics and conservative thought for publications such as The New York Times and The Atlantic.
Look at the 2019-2020 postcard featuring new faculty members.

redpajama_set_name: RedPajamaCommonCrawl


text:
/**
 ** Types definitions shared between server and clients
 **/

#ifndef _XDEFS_H
#define _XDEFS_H

#ifdef _XSERVER64
#include <X11/Xmd.h>
#endif

#ifndef _XTYPEDEF_ATOM
#  define _XTYPEDEF_ATOM
#  ifndef _XSERVER64
typedef unsigned long Atom;
#  else
typedef CARD32 Atom;
#  endif
#endif

#ifndef Bool
#  ifndef _XTYPEDEF_BOOL
#   define _XTYPEDEF_BOOL
typedef int Bool;
#  endif
#endif

#ifndef _XTYPEDEF_POINTER
#  define _XTYPEDEF_POINTER
typedef void *pointer;
#endif

#ifndef _XTYPEDEF_CLIENTPTR
typedef struct _Client *ClientPtr;
#  define _XTYPEDEF_CLIENTPTR
#endif

#ifndef _XTYPEDEF_XID
#  define _XTYPEDEF_XID
#  ifndef _XSERVER64
typedef unsigned long XID;
#  else
typedef CARD32 XID;
#  endif
#endif

#ifndef _XTYPEDEF_MASK
#  define _XTYPEDEF_MASK
#  ifndef _XSERVER64
typedef unsigned long Mask;
#  else
typedef CARD32 Mask;
#  endif
#endif

#ifndef _XTYPEDEF_FONTPTR
#  define _XTYPEDEF_FONTPTR
typedef struct _Font *FontPtr; /* also in fonts/include/font.h */
#endif

#ifndef _XTYPEDEF_FONT
#  define _XTYPEDEF_FONT
typedef XID	Font;
#endif

#ifndef _XTYPEDEF_FSID
#  ifndef _XSERVER64
typedef unsigned long FSID;
#  else
typedef CARD32 FSID;
#  endif
#endif

typedef FSID AccContext;

/* OS independent time value
   XXX Should probably go in Xos.h */
typedef struct timeval **OSTimePtr;

typedef void (* BlockHandlerProcPtr)(pointer /* blockData */,
				     OSTimePtr /* pTimeout */,
				     pointer /* pReadmask */);

#endif

redpajama_set_name: RedPajamaGithub


Danny and Nina move to Move Inc.
Move Inc., the company that brought you Realtor.com, is now hosting the ongoing saga of a couple of 20-somethings — Danny and Nina — who moved to Denver, Colo., based on the votes of an Internet audience, among other blogs related to such topics as senior housing and home renovation projects.
It is part of a very coordinated effort by one of the most popular real estate search destinations on the Internet to connect with consumers in a new way. Move, a publicly traded company that formerly operated as Homestore until a brand change last year, hired blogging entrepreneur Dustin Luther, founder of Seattle real estate blog RainCityGuide.com, in November as director of consumer innovations.
Move is branching out into blogging during a time of incredible growth in real estate blogs. Real estate agents and companies are using blogs to inform and connect with potential customers and to network with one another.
In addition to Move Inc.'s main company blog, which has been active for less than a year, the company has quietly launched six other blog sites under the company banner: Danny and Nina, Behind the Walls, Rental Survival Guide, First Time Home Buyers, Living with Roommates, and Senior Housing. The blogs generally mirror the various content areas of the company's Web sites, such as moving services and for-sale and for-rent housing.
Move Inc. sponsored Danny and Nina's move to Denver (Denver beat out Plano, Texas, by 27,464 votes), and their blog moved to the Move Inc. site.
"The Move Blogs are designed to facilitate a conversation with our consumers," Luther told Inman News via e-mail. "Our objective is to address topics that are most relevant to our audience, such as 'Rental Survival Guide' and 'Behind the Walls,' that provide a place for our consumers to both learn and be engaged to contribute to a conversation on these topics.
The company's main blog noted that Luther is hiring "a slew of interns … to help him out with some grassroots marketing initiatives." The company posted a job description for a "viral marketing intern," for example, to work with a director and "viral marketing coordinator to lead and execute online brand promotion activities including blogging, commenting, linking, ranking, voting, etc." The company seeks experience in "online viral technology" for this position, including "e-mail, blogs, wikis," and recommends that applicants are active in at least one social network.
If the Move Inc. blogging effort is a sincere effort to provide valuable information then it could be a hit, said Greg Sterling, founding principal of the Sterling Marketing Intelligence consulting and research company that is focused on the online behavior of consumers and advertisers.
Jim Cronin, a real estate consultant who operates the "Real Estate Tomato" blog site, which offers advice on online marketing, said that the new blogs launched by Move Inc. "look like blogs, smell like blogs, even tasted like blogs … but what blog that looks so much like a blog has no presence in the search engines?" He said there apparently hasn't been much online promotion of the new blogs yet.
According to the Move company blog: the company is seeking a product manager in charge of search-engine optimization.
The company is on the move in other ways, too — Errol Samuelson, president of Move Inc. subsidiary Top Producer, has been hired to serve as president of Realtor.com, the company announced last month. Samuelson succeeds Allan Dalton, who has left that position to pursue a hush-hush new business venture for the company.


text:
//////////////////////////////////////////////////////////////////
// (c) Copyright 1998-2002,2003- by Jeongnim Kim
//////////////////////////////////////////////////////////////////
//////////////////////////////////////////////////////////////////
//   Jeongnim Kim
//   National Center for Supercomputing Applications &
//   Materials Computation Center
//   University of Illinois, Urbana-Champaign
//   Urbana, IL 61801
//   e-mail: jnkim@ncsa.uiuc.edu
//
// Supported by
//   National Center for Supercomputing Applications, UIUC
//   Materials Computation Center, UIUC
//////////////////////////////////////////////////////////////////
// -*- C++ -*-

#include "QMCWaveFunctions/Fermion/DiracDeterminantBase.h"
#include "Numerics/DeterminantOperators.h"
#include "Numerics/OhmmsBlas.h"
#include "Numerics/MatrixOperators.h"
#include "simd/simd.hpp"

namespace qmcplusplus
{

/** constructor
 *@param spos the single-particle orbital set
 *@param first index of the first particle
 */
DiracDeterminantBase::DiracDeterminantBase(SPOSetBasePtr const &spos, int first):
  NP(0), Phi(spos), FirstIndex(first)
  ,UpdateTimer("DiracDeterminantBase::update")
  ,RatioTimer("DiracDeterminantBase::ratio")
  ,InverseTimer("DiracDeterminantBase::inverse")
  ,BufferTimer("DiracDeterminantBase::buffer")
  ,SPOVTimer("DiracDeterminantBase::spoval")
  ,SPOVGLTimer("DiracDeterminantBase::spovgl")
{
  Optimizable=false;
  if(Phi->Optimizable)
    Optimizable=true;
  OrbitalName="DiracDeterminantBase";
  registerTimers();
}

///default destructor
DiracDeterminantBase::~DiracDeterminantBase() {}

DiracDeterminantBase& DiracDeterminantBase::operator=(const DiracDeterminantBase& s)
{
  NP=0;
  resize(s.NumPtcls, s.NumOrbitals);
  return *this;
}

/** set the index of the first particle in the determinant and reset the size of the determinant
 *@param first index of first particle
 *@param nel number of particles in the determinant
 */
void DiracDeterminantBase::set(int first, int nel)
{
  FirstIndex = first;
  resize(nel,nel);
}

///reset the size: with the number of particles and number of orbtials
void DiracDeterminantBase::resize(int nel, int morb)
{
  int norb=morb;
  if(norb <= 0)
    norb = nel; // for morb == -1 (default)
  psiM.resize(nel,norb);
  dpsiM.resize(nel,norb);
  d2psiM.resize(nel,norb);
  psiM_temp.resize(nel,norb);
  dpsiM_temp.resize(nel,norb);
  d2psiM_temp.resize(nel,norb);
  psiMinv.resize(nel,norb);
  psiV.resize(norb);
  WorkSpace.resize(nel);
  Pivot.resize(nel);
  LastIndex = FirstIndex + nel;
  NumPtcls=nel;
  NumOrbitals=norb;
  // For forces
  grad_source_psiM.resize(nel,norb);
  grad_lapl_source_psiM.resize(nel,norb);
  grad_grad_source_psiM.resize(nel,norb);
  phi_alpha_Minv.resize(nel,norb);
  grad_phi_Minv.resize(nel,norb);
  lapl_phi_Minv.resize(nel,norb);
  grad_phi_alpha_Minv.resize(nel,norb);
}

DiracDeterminantBase::RealType
DiracDeterminantBase::registerData(ParticleSet& P, PooledData<RealType>& buf)
{
  if(NP == 0)
    //first time, allocate once
  {
    //int norb = cols();
    dpsiV.resize(NumOrbitals);
    d2psiV.resize(NumOrbitals);
    workV1.resize(NumOrbitals);
    workV2.resize(NumOrbitals);
    NP=P.getTotalNum();
    myG.resize(NP);
    myL.resize(NP);
    myG_temp.resize(NP);
    myL_temp.resize(NP);
    FirstAddressOfG = &myG[0][0];
    LastAddressOfG = FirstAddressOfG + NP*DIM;
    FirstAddressOfdV = &(dpsiM(0,0)[0]); //(*dpsiM.begin())[0]);
    LastAddressOfdV = FirstAddressOfdV + NumPtcls*NumOrbitals*DIM;
  }
  myG=0.0;
  myL=0.0;
  //ValueType x=evaluate(P,myG,myL);
  LogValue=evaluateLog(P,myG,myL);
  P.G += myG;
  P.L += myL;
  //add the data: determinant, inverse, gradient and laplacians
  buf.add(psiM.first_address(),psiM.last_address());
  buf.add(FirstAddressOfdV,LastAddressOfdV);
  buf.add(d2psiM.first_address(),d2psiM.last_address());
  buf.add(myL.first_address(), myL.last_address());
  buf.add(FirstAddressOfG,LastAddressOfG);
  buf.add(LogValue);
  buf.add(PhaseValue);
  return LogValue;
}

DiracDeterminantBase::RealType DiracDeterminantBase::updateBuffer(ParticleSet& P,
    PooledData<RealType>& buf, bool fromscratch)
{
  //myG=0.0;
  //myL=0.0;
  if(fromscratch)
  {
    LogValue=evaluateLog(P,myG,myL);
    UpdateTimer.start();
  }
  else
  {
    if(UpdateMode == ORB_PBYP_RATIO)
    {
      SPOVGLTimer.start();
      Phi->evaluate(P, FirstIndex, LastIndex, psiM_temp,dpsiM, d2psiM);
      SPOVGLTimer.stop();
    }
    UpdateTimer.start();
    if(NumPtcls==1)
    {
      // ValueType y=1.0/psiM_temp(0,0);
      // psiM(0,0)=y;
      // GradType rv = y*dpsiM(0,0);
      // myG(FirstIndex) += rv;
      // myL(FirstIndex) += y*d2psiM(0,0) - dot(rv,rv);
      ValueType y = psiM(0,0);
      GradType rv = y*dpsiM(0,0);
      P.G[FirstIndex]+=(myG[FirstIndex]=rv);
      P.L[FirstIndex]+=(myL[FirstIndex]=y*d2psiM(0,0)-dot(rv,rv));
      //myG(FirstIndex) += rv;
      //myL(FirstIndex) += y*d2psiM(0,0) - dot(rv,rv);
      //P.G += myG;
      //P.L += myL;
    }
    else
    {
      for(int i=0,iat=FirstIndex; i<NumPtcls; ++i,++iat)
      {
        myG[iat]=simd::dot(psiM[i],dpsiM[i],NumOrbitals);
        myL[iat]=simd::dot(psiM[i],d2psiM[i],NumOrbitals)-dot(myG[iat],myG[iat]);
      }
      for(int iat=FirstIndex; iat<LastIndex; ++iat)
        P.G[iat] += myG[iat];
      for(int iat=FirstIndex; iat<LastIndex; ++iat)
        P.L[iat] += myL[iat];
    }
  }
  UpdateTimer.stop();
  BufferTimer.start();
  //copy psiM to psiM_temp
  //psiM_temp=psiM;
  simd::copy(psiM_temp.data(),psiM.data(),psiM.size());
  buf.put(psiM.first_address(),psiM.last_address());
  buf.put(FirstAddressOfdV,LastAddressOfdV);
  buf.put(d2psiM.first_address(),d2psiM.last_address());
  buf.put(myL.first_address(), myL.last_address());
  buf.put(FirstAddressOfG,LastAddressOfG);
  buf.put(LogValue);
  buf.put(PhaseValue);
  BufferTimer.stop();
  return LogValue;
}

void DiracDeterminantBase::copyFromBuffer(ParticleSet& P, PooledData<RealType>& buf)
{
  BufferTimer.start();
  buf.get(psiM.first_address(),psiM.last_address());
  buf.get(FirstAddressOfdV,LastAddressOfdV);
  buf.get(d2psiM.first_address(),d2psiM.last_address());
  buf.get(myL.first_address(), myL.last_address());
  buf.get(FirstAddressOfG,LastAddressOfG);
  buf.get(LogValue);
  buf.get(PhaseValue);
  //re-evaluate it for testing
  //Phi.evaluate(P, FirstIndex, LastIndex, psiM, dpsiM, d2psiM);
  //CurrentDet = Invert(psiM.data(),NumPtcls,NumOrbitals);
  //need extra copy for gradient/laplacian calculations without updating it
  //psiM_temp = psiM;
  //dpsiM_temp = dpsiM;
  //d2psiM_temp = d2psiM;
  simd::copy(psiM_temp.data(),  psiM.data(),  psiM.size());
  simd::copy(dpsiM_temp.data(), dpsiM.data(), dpsiM.size());
  simd::copy(d2psiM_temp.data(),d2psiM.data(),d2psiM.size());
  BufferTimer.stop();
}

/** dump the inverse to the buffer
*/
void DiracDeterminantBase::dumpToBuffer(ParticleSet& P, PooledData<RealType>& buf)
{
  APP_ABORT("DiracDeterminantBase::dumpToBuffer");
  buf.add(psiM.first_address(),psiM.last_address());
}

/** copy the inverse from the buffer
*/
void DiracDeterminantBase::dumpFromBuffer(ParticleSet& P, PooledData<RealType>& buf)
{
  APP_ABORT("DiracDeterminantBase::dumpFromBuffer");
  buf.get(psiM.first_address(),psiM.last_address());
}

/** return the ratio only for the  iat-th partcle move
 * @param P current configuration
 * @param iat the particle thas is being moved
 */
DiracDeterminantBase::ValueType DiracDeterminantBase::ratio(ParticleSet& P, int iat)
{
  UpdateMode=ORB_PBYP_RATIO;
  WorkingIndex = iat-FirstIndex;
  SPOVTimer.start();
  Phi->evaluate(P, iat, psiV);
  SPOVTimer.stop();
  RatioTimer.start();
  curRatio = DetRatioByRow(psiM, psiV,WorkingIndex);
  RatioTimer.stop();
  return curRatio;
}

void DiracDeterminantBase::evaluateRatios(VirtualParticleSet& VP, vector<ValueType>& ratios)
{
  Matrix<ValueType> psiT(ratios.size(),NumOrbitals);
  Phi->evaluateValues(VP,psiT);
  MatrixOperators::product(psiT,psiM[VP.activePtcl-FirstIndex],&ratios[0]);
}

void DiracDeterminantBase::get_ratios(ParticleSet& P, vector<ValueType>& ratios)
{
  SPOVTimer.start();
  Phi->evaluate(P, 0, psiV);
  SPOVTimer.stop();
  MatrixOperators::product(psiM,psiV.data(),&ratios[FirstIndex]);
}

DiracDeterminantBase::GradType
DiracDeterminantBase::evalGrad(ParticleSet& P, int iat)
{
  WorkingIndex = iat-FirstIndex;
  RatioTimer.start();
  DiracDeterminantBase::GradType g = simd::dot(psiM[WorkingIndex],dpsiM[WorkingIndex],NumOrbitals);
  RatioTimer.stop();
  return g;
}

DiracDeterminantBase::GradType
DiracDeterminantBase::evalGradSource(ParticleSet& P, ParticleSet& source,
                                     int iat)
{
  Phi->evaluateGradSource (P, FirstIndex, LastIndex, source, iat, grad_source_psiM);
//     Phi->evaluate(P, FirstIndex, LastIndex, psiM, dpsiM, d2psiM);
//     LogValue=InvertWithLog(psiM.data(),NumPtcls,NumOrbitals,WorkSpace.data(),Pivot.data(),PhaseValue);
  return simd::dot(psiM.data(),grad_source_psiM.data(),psiM.size());
  //const ValueType* restrict yptr=psiM[0];
  //const GradType* restrict dyptr=grad_source_psiM[0];
  //for (int i=0; i<NumPtcls; i++)
  //  for(int j=0; j<NumOrbitals; j++)
  //    //rv += (*yptr++) *(*dyptr++);
  //    rv += grad_source_psiM(i,j) * psiM(i,j);
  //// HACK HACK
  ////return (grad_source_psiM(1,3));
  //return rv;
}

DiracDeterminantBase::GradType
DiracDeterminantBase::evalGradSourcep
(ParticleSet& P, ParticleSet& source,int iat,
 TinyVector<ParticleSet::ParticleGradient_t, OHMMS_DIM> &grad_grad,
 TinyVector<ParticleSet::ParticleLaplacian_t,OHMMS_DIM> &lapl_grad)
{
  Phi->evaluateGradSource (P, FirstIndex, LastIndex, source, iat,
                           grad_source_psiM, grad_grad_source_psiM,
                           grad_lapl_source_psiM);
  Phi->evaluate(P, FirstIndex, LastIndex, psiM, dpsiM, d2psiM);
  InverseTimer.start();
  LogValue=InvertWithLog(psiM.data(),NumPtcls,NumOrbitals,
                         WorkSpace.data(),Pivot.data(),PhaseValue);
  InverseTimer.stop();
  GradMatrix_t &Phi_alpha(grad_source_psiM);
  GradMatrix_t &Grad_phi(dpsiM);
  ValueMatrix_t &Grad2_phi(d2psiM);
  HessMatrix_t &Grad_phi_alpha(grad_grad_source_psiM);
  GradMatrix_t &Grad2_phi_alpha(grad_lapl_source_psiM);
  //    vector<ValueType> grad_psi_over_psi_vector;
  //    vector<ValueType> grad_psi_alpha_over_psi_vector;
  GradType Psi_alpha_over_psi;
  Psi_alpha_over_psi = evalGradSource(P, source, iat);
  ofstream outfile;
  outfile.open("grad_psi_alpha_over_psi",ios::app);
  ValueMatrix_t toDet;
  ValueMatrix_t toDet_l;
  toDet.resize(2,2);
  toDet_l.resize(2,2);
  for (int ptcl=0; ptcl<NumPtcls; ptcl++)
  {
    ValueType Grad2_psi_over_psi(0.0);
    GradType Grad_psi_over_psi(0.0);
    HessType Grad_psi_alpha_over_psi(0.0);
    HessType one_row_change(0.0);
    HessType two_row_change(0.0);
    GradType one_row_change_l(0.0);
    GradType two_row_change_l(0.0);
    for (int el_dim=0; el_dim<OHMMS_DIM; el_dim++)
    {
      for (int orbital=0; orbital<NumOrbitals; orbital++)
      {
        Grad_psi_over_psi(el_dim)+=Grad_phi(ptcl,orbital)(el_dim)*psiM(ptcl,orbital);
        if (el_dim==0)
          Grad2_psi_over_psi+=Grad2_phi(ptcl,orbital)*psiM(ptcl,orbital);
      }
      for (int dim=0; dim<OHMMS_DIM; dim++)
      {
        one_row_change(dim,el_dim)=0.0;
        for (int orbital=0; orbital<NumOrbitals; orbital++)
        {
          one_row_change(dim,el_dim)+=Grad_phi_alpha(ptcl,orbital)(dim,el_dim)*psiM(ptcl,orbital);
          if (el_dim==0)
            one_row_change_l(dim)+=Grad2_phi_alpha(ptcl,orbital)(dim)*psiM(ptcl,orbital);
        }
        for (int ptcl2=0; ptcl2<NumPtcls; ptcl2++)
        {
          if (ptcl!=ptcl2)
          {
            toDet=0.0;
            toDet_l=0.0;
            for (int orbital=0; orbital<NumOrbitals; orbital++)
            {
              toDet(0,0)+=Grad_phi(ptcl,orbital)(el_dim)*psiM(ptcl,orbital);
              toDet_l(0,0)+=Grad2_phi(ptcl,orbital)*psiM(ptcl,orbital);
              toDet(0,1)+=Grad_phi(ptcl,orbital)(el_dim)*psiM(ptcl2,orbital);
              toDet_l(0,1)+=Grad2_phi(ptcl,orbital)*psiM(ptcl2,orbital);
              toDet(1,0)+=Phi_alpha(ptcl2,orbital)(dim)*psiM(ptcl,orbital);
              toDet_l(1,0)+=Phi_alpha(ptcl2,orbital)(dim)*psiM(ptcl,orbital);
              toDet(1,1)+=Phi_alpha(ptcl2,orbital)(dim)*psiM(ptcl2,orbital);
              toDet_l(1,1)+=Phi_alpha(ptcl2,orbital)(dim)*psiM(ptcl2,orbital);
            }
            two_row_change(dim,el_dim)+=toDet(0,0)*toDet(1,1)-toDet(1,0)*toDet(0,1);
            if (el_dim==0)
              two_row_change_l(dim)+=toDet_l(0,0)*toDet_l(1,1)-toDet_l(1,0)*toDet_l(0,1);
          }
        }
        Grad_psi_alpha_over_psi(dim,el_dim)=one_row_change(dim,el_dim)+two_row_change(dim,el_dim);
        outfile<<Grad_psi_alpha_over_psi(dim,el_dim)<<endl;
        grad_grad(dim)(ptcl)(el_dim)=one_row_change(dim,el_dim)+two_row_change(dim,el_dim)-
                                     Grad_psi_over_psi(el_dim)*Psi_alpha_over_psi(dim);
      }
    }
    for (int dim=0; dim<OHMMS_DIM; dim++)
    {
      lapl_grad(dim)(ptcl)=0.0;
      lapl_grad(dim)(ptcl)+=one_row_change_l(dim)+two_row_change_l(dim)- Psi_alpha_over_psi(dim)*Grad2_psi_over_psi;
      for (int el_dim=0; el_dim<OHMMS_DIM; el_dim++)
      {
        lapl_grad(dim)(ptcl)-= 2.0*Grad_psi_alpha_over_psi(dim,el_dim)*Grad_psi_over_psi(el_dim);
        lapl_grad(dim)(ptcl)+= 2.0*Psi_alpha_over_psi(dim)*(Grad_psi_over_psi(el_dim)*Grad_psi_over_psi(el_dim));
      }
    }
  }
  outfile.close();
  return Psi_alpha_over_psi;
}

void DiracDeterminantBase::evaluateHessian(ParticleSet& P, HessVector_t& grad_grad_psi)
{
	//IM A HACK.  Assumes evaluateLog has already been executed.
	Phi->evaluate(P, FirstIndex, LastIndex, psiM, dpsiM, grad_grad_source_psiM);
	phi_alpha_Minv = 0.0;
    grad_phi_Minv = 0.0;
    lapl_phi_Minv = 0.0;
    grad_phi_alpha_Minv = 0.0;
    //grad_grad_psi.resize(NumPtcls);

	InvertWithLog(psiM.data(),NumPtcls,NumOrbitals,WorkSpace.data(),Pivot.data(),PhaseValue);
   // InverseTimer.stop();
 //   RatioTimer.start();
 //   for(int i=0, iat=FirstIndex; i<NumPtcls; i++, iat++)
 //   {
 //     GradType rv=simd::dot(psiM[i],dpsiM[i],NumOrbitals);
 //     ValueType lap=simd::dot(psiM[i],d2psiM[i],NumOrbitals);
  //    G(iat) += rv;
  //    L(iat) += lap - dot(rv,rv);
 //   }
 //   RatioTimer.stop();

    for(int i=0, iat=FirstIndex; i<NumPtcls; i++, iat++)
    {
      GradType rv=simd::dot(psiM[i],dpsiM[i],NumOrbitals);

    //  HessType hess_tmp=simd::dot(psiM[i],grad_grad_source_psiM[i],NumOrbitals);
      HessType hess_tmp;
      hess_tmp=0.0;
      hess_tmp=simd::dot(psiM[i],grad_grad_source_psiM[i],NumOrbitals);

   //   for (int orb=0; orb<NumOrbitals; orb++)
  //    {
//		hess_tmp+=psiM(i,orb)*grad_grad_source_psiM(i,orb);
 //     }
     // G(iat) += rv;
     // L(iat) += lap - dot(rv,rv);
  //    app_log()<<"rv = "<<rv<<endl;
   //   app_log()<<"outer = "<<outerProduct(rv,rv)<<endl;
   //   app_log()<<"hess_tmp = "<<hess_tmp<<endl;
      grad_grad_psi[iat]=hess_tmp-outerProduct(rv,rv);
    }
	 psiM_temp = psiM;

}

DiracDeterminantBase::GradType
DiracDeterminantBase::evalGradSource
(ParticleSet& P, ParticleSet& source,int iat,
 TinyVector<ParticleSet::ParticleGradient_t, OHMMS_DIM> &grad_grad,
 TinyVector<ParticleSet::ParticleLaplacian_t,OHMMS_DIM> &lapl_grad)
{
  Phi->evaluateGradSource (P, FirstIndex, LastIndex, source, iat,
                           grad_source_psiM, grad_grad_source_psiM,
                           grad_lapl_source_psiM);
  // HACK HACK HACK
  // Phi->evaluate(P, FirstIndex, LastIndex, psiM, dpsiM, d2psiM);
  // psiM_temp = psiM;
  // LogValue=InvertWithLog(psiM.data(),NumPtcls,NumOrbitals,
  // 			   WorkSpace.data(),Pivot.data(),PhaseValue);
  // for (int i=0; i<NumPtcls; i++)
  //   for (int j=0; j<NumPtcls; j++) {
  // 	double val = 0.0;
  // 	for (int k=0; k<NumPtcls; k++)
  // 	  val += psiM(i,k) * psiM_temp(k,j);
  // 	val -= (i == j) ? 1.0 : 0.0;
  // 	if (std::fabs(val) > 1.0e-12)
  // 	  cerr << "Error in inverse.\n";
  //   }
  // for (int i=0; i<NumPtcls; i++) {
  //   P.G[FirstIndex+i] = GradType();
  //   for (int j=0; j<NumOrbitals; j++)
  // 	P.G[FirstIndex+i] += psiM(i,j)*dpsiM(i,j);
  // }
  // Compute matrices
  phi_alpha_Minv = 0.0;
  grad_phi_Minv = 0.0;
  lapl_phi_Minv = 0.0;
  grad_phi_alpha_Minv = 0.0;
  for (int i=0; i<NumPtcls; i++)
    for (int j=0; j<NumOrbitals; j++)
    {
      lapl_phi_Minv(i,j) = 0.0;
      for (int k=0; k<NumOrbitals; k++)
        lapl_phi_Minv(i,j) += d2psiM(i,k)*psiM(j,k);
    }
  for (int dim=0; dim<OHMMS_DIM; dim++)
  {
    for (int i=0; i<NumPtcls; i++)
      for (int j=0; j<NumOrbitals; j++)
      {
        for (int k=0; k<NumOrbitals; k++)
        {
          phi_alpha_Minv(i,j)[dim] += grad_source_psiM(i,k)[dim] * psiM(j,k);
          grad_phi_Minv(i,j)[dim] += dpsiM(i,k)[dim] * psiM(j,k);
          for (int dim_el=0; dim_el<OHMMS_DIM; dim_el++)
            grad_phi_alpha_Minv(i,j)(dim, dim_el) +=
              grad_grad_source_psiM(i,k)(dim,dim_el)*psiM(j,k);
        }
      }
  }
  GradType gradPsi;
  for(int i=0, iel=FirstIndex; i<NumPtcls; i++, iel++)
  {
    HessType dval (0.0);
    GradType d2val(0.0);
    for (int dim=0; dim<OHMMS_DIM; dim++)
      for (int dim_el=0; dim_el<OHMMS_DIM; dim_el++)
        dval(dim,dim_el) = grad_phi_alpha_Minv(i,i)(dim,dim_el);
    for(int j=0; j<NumOrbitals; j++)
    {
      gradPsi += grad_source_psiM(i,j) * psiM(i,j);
      for (int dim=0; dim<OHMMS_DIM; dim++)
        for (int k=0; k<OHMMS_DIM; k++)
          dval(dim,k) -= phi_alpha_Minv(j,i)[dim]*grad_phi_Minv(i,j)[k];
    }
    for (int dim=0; dim<OHMMS_DIM; dim++)
    {
      for (int k=0; k<OHMMS_DIM; k++)
        grad_grad[dim][iel][k] += dval(dim,k);
      for (int j=0; j<NumOrbitals; j++)
      {
        // First term, eq 9
        lapl_grad[dim][iel] += grad_lapl_source_psiM(i,j)[dim] *
                               psiM(i,j);
        // Second term, eq 9
        if (j == i)
          for (int dim_el=0; dim_el<OHMMS_DIM; dim_el++)
            lapl_grad[dim][iel] -= 2.0 * grad_phi_alpha_Minv(j,i)(dim,dim_el)
                                   * grad_phi_Minv(i,j)[dim_el];
        // Third term, eq 9
        // First term, eq 10
        lapl_grad[dim][iel] -= phi_alpha_Minv(j,i)[dim]*lapl_phi_Minv(i,j);
        // Second term, eq 11
        for (int dim_el=0; dim_el<OHMMS_DIM; dim_el++)
          lapl_grad[dim][iel] += 2.0*phi_alpha_Minv(j,i)[dim] *
                                 grad_phi_Minv(i,i)[dim_el]*grad_phi_Minv(i,j)[dim_el];
      }
    }
  }
  return gradPsi;
}

DiracDeterminantBase::ValueType
DiracDeterminantBase::ratioGrad(ParticleSet& P, int iat, GradType& grad_iat)
{
  SPOVGLTimer.start();
  Phi->evaluate(P, iat, psiV, dpsiV, d2psiV);
  SPOVGLTimer.stop();
  RatioTimer.start();
  WorkingIndex = iat-FirstIndex;
  UpdateMode=ORB_PBYP_PARTIAL;
  curRatio=simd::dot(psiM[WorkingIndex],psiV.data(),NumOrbitals);
  GradType rv=simd::dot(psiM[WorkingIndex],dpsiV.data(),NumOrbitals);
  grad_iat += (1.0/curRatio) * rv;
  RatioTimer.stop();
  return curRatio;
  ////////////////////////////////////////
  ////THIS WILL BE REMOVED. ONLY FOR DEBUG DUE TO WAVEFUNCTIONTEST
  //{
  //  int kat=FirstIndex;
  //  for(int j=0; j<NumOrbitals; j++) {
  //    dpsiM_temp(WorkingIndex,j)=dpsiV[j];
  //    d2psiM_temp(WorkingIndex,j)=d2psiV[j];
  //  }
  //  const ValueType* restrict yptr=psiM_temp.data();
  //  const ValueType* restrict d2yptr=d2psiM_temp.data();
  //  const GradType* restrict dyptr=dpsiM_temp.data();
  //  for(int i=0; i<NumPtcls; i++,kat++) {
  //    //This mimics gemm with loop optimization
  //    GradType rv;
  //    ValueType lap=0.0;
  //    for(int j=0; j<NumOrbitals; j++,yptr++) {
  //      rv += *yptr * *dyptr++;
  //      lap += *yptr * *d2yptr++;
  //    }
  //    lap -= dot(rv,rv);
  //    myG_temp[kat]=rv;
  //    myL_temp[kat]=lap;
  //  }
  //}
  ////////////////////////////////////////
}

/** return the ratio
 * @param P current configuration
 * @param iat particle whose position is moved
 * @param dG differential Gradients
 * @param dL differential Laplacians
 *
 * Data member *_temp contain the data assuming that the move is accepted
 * and are used to evaluate differential Gradients and Laplacians.
 */
DiracDeterminantBase::ValueType DiracDeterminantBase::ratio(ParticleSet& P, int iat,
    ParticleSet::ParticleGradient_t& dG,
    ParticleSet::ParticleLaplacian_t& dL)
{
  UpdateMode=ORB_PBYP_ALL;
  SPOVGLTimer.start();
  Phi->evaluate(P, iat, psiV, dpsiV, d2psiV);
  SPOVGLTimer.stop();
  RatioTimer.start();
  WorkingIndex = iat-FirstIndex;
  //psiM_temp = psiM;
  curRatio= DetRatioByRow(psiM_temp, psiV, WorkingIndex);
  RatioTimer.stop();
  if(abs(curRatio)<numeric_limits<RealType>::epsilon())
  {
    UpdateMode=ORB_PBYP_RATIO; //singularity! do not update inverse
    return 0.0;
  }
  UpdateTimer.start();
  //update psiM_temp with the row substituted
  InverseUpdateByRow(psiM_temp,psiV,workV1,workV2,WorkingIndex,curRatio);
  //update dpsiM_temp and d2psiM_temp
  //std::copy(dpsiV.begin(),dpsiV.end(),dpsiM_temp[WorkingIndex]);
  //std::copy(d2psiV.begin(),d2psiV.end(),d2psiM_temp[WorkingIndex]);
  simd::copy(dpsiM_temp[WorkingIndex],dpsiV.data(),NumOrbitals);
  simd::copy(d2psiM_temp[WorkingIndex],d2psiV.data(),NumOrbitals);
  UpdateTimer.stop();
  RatioTimer.start();
  for(int i=0,kat=FirstIndex; i<NumPtcls; i++,kat++)
  {
    //using inline dot functions
    GradType rv=simd::dot(psiM_temp[i],dpsiM_temp[i],NumOrbitals);
    ValueType lap=simd::dot(psiM_temp[i],d2psiM_temp[i],NumOrbitals);
    lap -= dot(rv,rv);
    dG[kat] += rv - myG[kat];
    myG_temp[kat]=rv;
    dL[kat] += lap -myL[kat];
    myL_temp[kat]=lap;
  }
  RatioTimer.stop();
  return curRatio;
}

DiracDeterminantBase::ValueType DiracDeterminantBase::logRatio(ParticleSet& P, int iat,
    ParticleSet::ParticleGradient_t& dG,
    ParticleSet::ParticleLaplacian_t& dL)
{
  APP_ABORT("  logRatio is not allowed");
  //THIS SHOULD NOT BE CALLED
  ValueType r=ratio(P,iat,dG,dL);
  return LogValue = evaluateLogAndPhase(r,PhaseValue);
}

/** move was accepted, update the real container
*/
void DiracDeterminantBase::acceptMove(ParticleSet& P, int iat)
{
  PhaseValue += evaluatePhase(curRatio);
  LogValue +=std::log(std::abs(curRatio));
  UpdateTimer.start();
  switch(UpdateMode)
  {
  case ORB_PBYP_RATIO:
    InverseUpdateByRow(psiM,psiV,workV1,workV2,WorkingIndex,curRatio);
    break;
  case ORB_PBYP_PARTIAL:
    InverseUpdateByRow(psiM,psiV,workV1,workV2,WorkingIndex,curRatio);
    //std::copy(dpsiV.begin(),dpsiV.end(),dpsiM[WorkingIndex]);
    //std::copy(d2psiV.begin(),d2psiV.end(),d2psiM[WorkingIndex]);
    simd::copy(dpsiM[WorkingIndex],  dpsiV.data(),  NumOrbitals);
    simd::copy(d2psiM[WorkingIndex], d2psiV.data(), NumOrbitals);
    //////////////////////////////////////
    ////THIS WILL BE REMOVED. ONLY FOR DEBUG DUE TO WAVEFUNCTIONTEST
    //myG = myG_temp;
    //myL = myL_temp;
    ///////////////////////
    break;
  default:
    myG = myG_temp;
    myL = myL_temp;
    //psiM = psiM_temp;
    //std::copy(dpsiV.begin(),dpsiV.end(),dpsiM[WorkingIndex]);
    //std::copy(d2psiV.begin(),d2psiV.end(),d2psiM[WorkingIndex]);
    simd::copy(psiM.data(),     psiM_temp.data(),   psiM.size());
    simd::copy(dpsiM[WorkingIndex],  dpsiV.data(),  NumOrbitals);
    simd::copy(d2psiM[WorkingIndex], d2psiV.data(), NumOrbitals);
    break;
  }
  UpdateTimer.stop();
  curRatio=1.0;
}

/** move was rejected. copy the real container to the temporary to move on
*/
void DiracDeterminantBase::restore(int iat)
{
  if(UpdateMode == ORB_PBYP_ALL)
  {
    //psiM_temp = psiM;
    //std::copy(dpsiM[WorkingIndex],dpsiM[WorkingIndex+1],dpsiM_temp[WorkingIndex]);
    //std::copy(d2psiM[WorkingIndex],d2psiM[WorkingIndex+1],d2psiM_temp[WorkingIndex]);
    simd::copy(psiM_temp.data(),     psiM.data(),   psiM.size());
    simd::copy(dpsiM_temp[WorkingIndex],  dpsiM[WorkingIndex],  NumOrbitals);
    simd::copy(d2psiM_temp[WorkingIndex], d2psiM[WorkingIndex], NumOrbitals);
  }
  curRatio=1.0;
}

void DiracDeterminantBase::update(ParticleSet& P,
                                  ParticleSet::ParticleGradient_t& dG,
                                  ParticleSet::ParticleLaplacian_t& dL,
                                  int iat)
{
  UpdateTimer.start();
  InverseUpdateByRow(psiM,psiV,workV1,workV2,WorkingIndex,curRatio);
  //for(int j=0; j<NumOrbitals; j++) {
  //  dpsiM(WorkingIndex,j)=dpsiV[j];
  //  d2psiM(WorkingIndex,j)=d2psiV[j];
  //}
  simd::copy(dpsiM[WorkingIndex],  dpsiV.data(),  NumOrbitals);
  simd::copy(d2psiM[WorkingIndex], d2psiV.data(), NumOrbitals);
  UpdateTimer.stop();
  RatioTimer.start();
  int kat=FirstIndex;
  for(int i=0; i<NumPtcls; i++,kat++)
  {
    GradType rv=simd::dot(psiM[i],dpsiM[i],NumOrbitals);
    ValueType lap=simd::dot(psiM[i],d2psiM[i],NumOrbitals);
    lap -= dot(rv,rv);
    dG[kat] += rv - myG[kat];
    myG[kat]=rv;
    dL[kat] += lap -myL[kat];
    myL[kat]=lap;
  }
  RatioTimer.stop();
  PhaseValue += evaluatePhase(curRatio);
  LogValue +=std::log(std::abs(curRatio));
  curRatio=1.0;
}

DiracDeterminantBase::RealType
DiracDeterminantBase::evaluateLog(ParticleSet& P, PooledData<RealType>& buf)
{
  buf.put(psiM.first_address(),psiM.last_address());
  buf.put(FirstAddressOfdV,LastAddressOfdV);
  buf.put(d2psiM.first_address(),d2psiM.last_address());
  buf.put(myL.first_address(), myL.last_address());
  buf.put(FirstAddressOfG,LastAddressOfG);
  buf.put(LogValue);
  buf.put(PhaseValue);
  return LogValue;
}

void DiracDeterminantBase::registerDataForDerivatives(ParticleSet& P, PooledData<RealType>& buf, int storageType)
{
  DerivStorageType=storageType;
  if(storageType == 0)
    // store everything
  {
    buf.add(psiM.first_address(),psiM.last_address());
//       buf.add(FirstAddressOfdV,LastAddressOfdV);
//       buf.add(d2psiM.first_address(),d2psiM.last_address());
    buf.add(myL.first_address(), myL.last_address());
    buf.add(FirstAddressOfG,LastAddressOfG);
    buf.add(LogValue);
    buf.add(PhaseValue);
  }
  else
    // only store the inverse
  {
    buf.add(psiM.first_address(),psiM.last_address());
  }
}

void DiracDeterminantBase::copyToDerivativeBuffer(ParticleSet& P, PooledData<RealType>& buf)
{
  if(DerivStorageType==0)
  {
    buf.put(psiM.first_address(),psiM.last_address());
//     buf.put(FirstAddressOfdV,LastAddressOfdV);
//     buf.put(d2psiM.first_address(),d2psiM.last_address());
    buf.put(myL.first_address(), myL.last_address());
    buf.put(FirstAddressOfG,LastAddressOfG);
    buf.put(LogValue);
    buf.put(PhaseValue);
  }
  else
  {
    buf.put(psiM.first_address(),psiM.last_address());
  }
}

void DiracDeterminantBase::copyFromDerivativeBuffer(ParticleSet& P, PooledData<RealType>& buf)
{
  if(DerivStorageType==0)
  {
    buf.get(psiM.first_address(),psiM.last_address());
//     buf.get(FirstAddressOfdV,LastAddressOfdV);
//     buf.get(d2psiM.first_address(),d2psiM.last_address());
    buf.get(myL.first_address(), myL.last_address());
    buf.get(FirstAddressOfG,LastAddressOfG);
    buf.get(LogValue);
    buf.get(PhaseValue);
  }
  else
  {
    buf.get(psiM.first_address(),psiM.last_address());
  }
  P.G += myG;
  P.L += myL;
}

DiracDeterminantBase::RealType DiracDeterminantBase::evaluateLogForDerivativeBuffer(ParticleSet& P, PooledData<RealType>& buf)
{
  myG=0.0;
  myL=0.0;
  //ValueType x=evaluate(P,myG,myL);
  LogValue=evaluateLog(P,myG,myL);
  P.G += myG;
  P.L += myL;
  return LogValue;
}

DiracDeterminantBase::RealType DiracDeterminantBase::evaluateLogFromDerivativeBuffer(ParticleSet& P, PooledData<RealType>& buf)
{
//    P.G += myG;
//    P.L += myL;
  return LogValue;
}

/** Calculate the value of the Dirac determinant for particles
 *@param P input configuration containing N particles
 *@param G a vector containing N gradients
 *@param L a vector containing N laplacians
 *@return the value of the determinant
 *
 *\f$ (first,first+nel). \f$  Add the gradient and laplacian
 *contribution of the determinant to G(radient) and L(aplacian)
 *for local energy calculations.
 */
DiracDeterminantBase::ValueType
DiracDeterminantBase::evaluate(ParticleSet& P,
                               ParticleSet::ParticleGradient_t& G,
                               ParticleSet::ParticleLaplacian_t& L)
{
//       APP_ABORT("  DiracDeterminantBase::evaluate is disabled");
  RealType logval = evaluateLog(P, G, L);
#if defined(QMC_COMPLEX)
  RealType ratioMag = std::exp(logval);
  return std::complex<OHMMS_PRECISION>(std::cos(PhaseValue)*ratioMag,std::sin(PhaseValue)*ratioMag);
#else
  return std::cos(PhaseValue)*std::exp(logval);
#endif
}

DiracDeterminantBase::RealType
DiracDeterminantBase::evaluateLog(ParticleSet& P,
                                  ParticleSet::ParticleGradient_t& G,
                                  ParticleSet::ParticleLaplacian_t& L)
{
  //      cerr<<"I'm calling evaluate log"<<endl;
  SPOVGLTimer.start();
  Phi->evaluate(P, FirstIndex, LastIndex, psiM,dpsiM, d2psiM);
  SPOVGLTimer.stop();
  if(NumPtcls==1)
  {
    //CurrentDet=psiM(0,0);
    ValueType det=psiM(0,0);
    ValueType y=1.0/det;
    psiM(0,0)=y;
    GradType rv = y*dpsiM(0,0);
    G(FirstIndex) += rv;
    L(FirstIndex) += y*d2psiM(0,0) - dot(rv,rv);
    LogValue = evaluateLogAndPhase(det,PhaseValue);
  }
  else
  {
    InverseTimer.start();
    LogValue=InvertWithLog(psiM.data(),NumPtcls,NumOrbitals,WorkSpace.data(),Pivot.data(),PhaseValue);
    InverseTimer.stop();
    RatioTimer.start();
    for(int i=0, iat=FirstIndex; i<NumPtcls; i++, iat++)
    {
      GradType rv=simd::dot(psiM[i],dpsiM[i],NumOrbitals);
      ValueType lap=simd::dot(psiM[i],d2psiM[i],NumOrbitals);
      G(iat) += rv;
      L(iat) += lap - dot(rv,rv);
    }
    RatioTimer.stop();
  }
  psiM_temp = psiM;
  return LogValue;
}

void
DiracDeterminantBase::evaluateDerivatives(ParticleSet& P,
    const opt_variables_type& active,
    vector<RealType>& dlogpsi,
    vector<RealType>& dhpsioverpsi)
{
}

OrbitalBasePtr DiracDeterminantBase::makeClone(ParticleSet& tqp) const
{
  APP_ABORT(" Illegal action. Cannot use DiracDeterminantBase::makeClone");
  return 0;
}

DiracDeterminantBase* DiracDeterminantBase::makeCopy(SPOSetBasePtr spo) const
{
  DiracDeterminantBase* dclone= new DiracDeterminantBase(spo);
  dclone->set(FirstIndex,LastIndex-FirstIndex);
  return dclone;
}

DiracDeterminantBase::DiracDeterminantBase(const DiracDeterminantBase& s)
  : OrbitalBase(s), NP(0),Phi(s.Phi),FirstIndex(s.FirstIndex)
  ,UpdateTimer(s.UpdateTimer)
  ,RatioTimer(s.RatioTimer)
  ,InverseTimer(s.InverseTimer)
  ,BufferTimer(s.BufferTimer)
  ,SPOVTimer(s.SPOVTimer)
  ,SPOVGLTimer(s.SPOVGLTimer)
{
  registerTimers();
  this->resize(s.NumPtcls,s.NumOrbitals);
}

//SPOSetBasePtr  DiracDeterminantBase::clonePhi() const
//{
//  return Phi->makeClone();
//}

void DiracDeterminantBase::registerTimers()
{
  UpdateTimer.reset();
  RatioTimer.reset();
  TimerManager.addTimer (&UpdateTimer);
  TimerManager.addTimer (&RatioTimer);
  TimerManager.addTimer (&InverseTimer);
  TimerManager.addTimer (&BufferTimer);
  TimerManager.addTimer (&SPOVTimer);
  TimerManager.addTimer (&SPOVGLTimer);
}

}
/***************************************************************************
 * $RCSfile$   $Author: j.k.rofling@gmail.com $
 * $Revision: 6295 $   $Date: 2014-04-23 01:22:19 -0400 (Wed, 23 Apr 2014) $
 * $Id: DiracDeterminantBase.cpp 6295 2014-04-23 05:22:19Z j.k.rofling@gmail.com $
 ***************************************************************************/


text:
Home Business How to Find an Affordable HVAC Contractor
Career/Job
How to Find an Affordable HVAC Contractor
Elle Gellrich
Aside from repairing and maintaining HVAC systems, an HVAC contractor can also provide maintenance and service for them. It is not possible for homeowners to maintain the units properly, so the help of a professional is very useful. The clients can contact the contractors directly through the web portal. They must note the ratings and reviews of the contractors they are considering hiring. They can also seek recommendations from the people around them to select the best contractor. Here are some tips to find an HVAC contractor at affordable prices.
Licensing requirements for HVAC contractors in New York
Specializations of HVAC contractor
Salary of HVAC contractor
If you are interested in becoming an HVAC contractor in New York, you may be wondering what the licensing requirements are. Although HVAC licenses vary from state to state, each municipality has specific requirements. To avoid problems and ensure the highest quality of work, check with your local office to learn more about the specific licensing requirements. Most states recognize the EPA and NATE certifications as valid licenses. In addition to the license, you must pay a fee of $100 to become licensed. A renewal fee of $75 is also required every three years.
Although the licensing requirements for HVAC contractors vary from state to state, there are certain things that you must meet to avoid getting thrown out of business. For instance, HVAC certifications show that you have specialized knowledge and have been in the industry for a significant amount of time. While New York has no formal education requirement for HVAC contractors, some municipalities require them to take continuing education courses to stay up to date on the latest innovations in the industry. Many distributors also hold training sessions to teach technicians about their latest offerings.
The specializations of an HVAC contractor can vary depending on the location and type of facility they work in. The needs of hospitals and medical facilities are vastly different than those of commercial buildings. Considering all the options, it is best to educate yourself and seek advice from various sources before making a decision. The specializations you select will profoundly affect the quality of your career. If you choose the wrong specialization, you may find yourself at a dead end.
If you're aiming to be an HVAC contractor, you should have the knowledge and experience to handle different types of projects. Some of the most common HVAC jobs include installing, servicing, and maintaining existing HVAC systems. Other HVAC career paths include selling new HVAC components, installing solar-powered HVAC systems, and more. All these job roles require knowledge and experience of HVAC systems and a good sales skill set. In addition to these jobs, there are many other career options in the industry.
In the United States, the median annual salary for an HVAC contractor is $49429. The highest paid 10 percent of HVAC contractors to earn over $59,000, while the lowest paid earn less than $41,000. HVAC contractors may also have a different hourly rate. The cost of materials for HVAC projects can influence the rate, as can global metal prices. Local market forces also determine the rate, though wage union leaders often have a significant influence on the rate.
The salary of an HVAC contractor should be based on the various jobs they perform, such as installation and service. Many contractors decide not to pay themselves until times are rough, but Kopp recommends starting out with a small salary. By doing so, you will establish discipline and avoid the temptation to skip paying yourself. In addition, the salary is a ceiling for the amount of money you will earn as an HVAC contractor. Moreover, you will be able to make reasonable business plans based on the pay scale.
Previous articleHow to Find the Best THCP for Sale
Next articleHow to Compare Moving Company Quotes
What Are the Best Air Bar Vape Flavors?
1Win in India
Chhalaang Movie Wiki Details, Star Cast, Release Date, Poster, Story
Chhalaang is an upcoming 2020 Bollywood social black comedy movie which is directed by Hansal Mehta. The...
Sericulture Assam Recruitment 2021- 180 Grade 4 posts
Candidates are invited to apply for Sericulture Assam Recruitment 2021. The Directorate of Sericulture, Government of Assam, invites...
CCL Apprentice Recruitment 2021 | Apply Online for 482 Posts
CCL Apprentice Recruitment 2021 Apply online for CCL Apprentice posts of Mechanic, Pump Operator, Switch Board Attendant,...
Anek Movie 2022 Wiki Details, Star Cast, Release Date, Poster, Story
Anek movie 2022 Details | Star Cast | Release Date | Story | Cast and Crew |...
RSMSSB Patwari Admit Card 2021 Rajasthan Patwari Exam Date @rsmssb.rajasthan.gov.in
RSMSSB Patwari Admit Card 2021 | Rajasthan Patwari Admit Card 2021 | Rajasthan Patwari Hall Ticket, Call...
Rajasthan Board 10th Time Table 2021 – RBSE 10th Time Table 2021
RBSE 10th Time Table 2021 | Rajasthan Board 10th Time Table 2021:- Download RBSE 10th Time Table...
Holiday Bulk Shipping Supplies at a HUGE cost advantage!
The holidays are approaching quickly… …and this is the time of year that companies start to prepare for...
Ranbir Kapoor Upcoming Movies List 2022 – 2023
Ranbir Kapoor Upcoming movies :- Ranbir Kapoor is a famous actor of Hindi films, his Hindi film...
Hawayein Movie Wiki Details, Star Cast, Release Date, Poster, Story
Hawayein (The Winds) is an upcoming 2020 Bollywood drama, road film which is written and directed by...
BARC Mumbai Recruitment 2021 Apply online for 63 vacancies
Online applications are invited against BARC Mumbai Recruitment 2021 Notification for various posts. Desirous candidates can apply...


Mead is a classic fermented beverage with a long history. Ancient text and drawings, some dating back as far as 4000 BC, mention both wine and mead. Several Biblical writings describe this wonderful drink, as do many Roman and Egyptian texts. The first detailed mead recipes began appearing in the early 1500's and make reference to these ancient texts.
Originally mead was made by fermenting honey and water with wild yeasts. Over time, many variations were invented. Some recipes add spices and some add fruit, while other recipes even call for adding grape juice! Each of these variations have taken on different names over the years such as Melomel, Metheglin, Pyment and Cyser but the foundation of these fermented beverages still remains sweet honey. Mead-making offers endless possibilities, giving Batch 1 Brewing a new arsenal of tools to use in the quest for making wonderful fermented beverages. Mead can be fermented as either wine or beer. When fermenting it with malt, and at a lower original gravity, with the final beverage resembling and tasting much like ale. We also increase the starting sugars and ferment it so the resulting beverage has alcohol levels that resemble wine. Malt will be the primary determining factor in the final flavor; by adding it to our mead, the finished drink will resemble beer more than wine.
As everyone knows, honey is produced by bees. The Latin name for honey bees is Apis Mellifera, which means "honey carrier." The various flavors of honey, which include Orange Blossom, Wildflower and Clover, are the result of the different nectars collected by a hive of bees in a particular year.
The nectar collected by bees from various sources is primarily a complex combination of sucrose (cane sugar), dextrose (grape sugar or glucose) and fructose (fruit sugar). The nectar is stored in the bee's "honey sac" and transported to the hive. Enzymes are added to the nectar inside the sac. The nectar is then delivered to the honeycomb, where the bees evaporate its moisture by fanning their wings. The nectar has now become honey, and the bees seal it into the comb with wax.
The average composition of honey is water, amino acids and enzymes, dextrose, sucrose and fructose, minerals and organic acids. (Raw honey also contains pollen, wax and Propolis, a gummy substance that bees use to seal the honeycomb.
Under most circumstances the amounts or percentage of each of these compounds can vary substantially. The sugars tend to have the most consistent levels; they average 80 percent of total composition, with water content averaging 17 percent. The remaining three percent is comprised of minerals, vitamins, proteins and enzymes.
The amount of water contained in honey is critical to its quality and to its stability.
Honey gets its flavor and consistency from the floral nectars on which the bees are foraging. North America has more than 300 floral sources for honey, and each nectar varies in the type of sugars, proteins, minerals and trace elements present. The small quantities of aromatic oils also differ between flowering plants. Honey falls into one of two categories, "monofloral" and "polyfloral." The difference is whether the bees collected nectar from a single source or from different sources.
Tupelo: This light, golden-amber table honey is prized because it does not crystallize. It has a very high fructose-to-glucose ratio of 44:30. It is made from the nectar of the greenish-white flowers of the Ogeechee lime tupelo trees, which grow only in the swamps of northern Florida and southern Georgia. Tupelo honey is rare and the most expensive in America.
Orange Blossom: This is the most aromatic of all honeys; it smells like an orange grove in full bloom. This honey comes from the citrus groves of southern California and Florida, orange blossom honey is exceptional. Other citrus honeys are often given this same name, though they may have come from a different citrus flower source.
Wild Buckwheat: This is a relatively dark honey, and the flavor is strong. Its flavor is often described as resembling malt, which explains its popularity with brewers. It is usually made from the wild buckwheat of Washington state, not the commercial buckwheat grown in the Northeast.
Clover: This is a light honey. The moisture levels tend to run on the high side, at about 18 percent, making clover honey a candidate for quick use. As with most of the lighter-flavored honeys, the ash content is low, as is the total acid content, which would contribute to a softer flavor profile. It's a great choice for flavored meads, in which you may want less of the honey flavor and more of the fruit or spice in the upfront profile.
Mesquite: Mesquite honey is produced in the desert areas of Texas during the dry spring and summer months. Mesquite trees are ubiquitous in areas of Texas stretching from Austin southwest toward the Mexican border. The white flowers produce a light honey of delicate flavor.
Wildflower: Wildflower honey can be very unique, with special flavors. This depends mostly on the kind of flower the nectar was collected from. It can be notably different from region to region, because of the different plants and flowers that are indigenous to each area. Plants such as Wild Thyme, Bramble and Hawthorne are often sources of nectar for this honey.
Sage: This is a light-flavored honey with good aromatic qualities. Sage shrubs usually grow along the California coast and in the Sierra Nevada mountains. The color of sage honey is usually white or water-white. Like Tupelo, Sage has a higher fructose-to-glucose ratio and is extremely slow to crystallize. Other types of honey that are well worth it for our mead-making are also Fireweed, Blackberry Blossom and raspberry blossom. The names alone have a strong lure. I have made mead from orange blossom honey and Pumpkin honey (among other types), and highly recommend both of these meads for their aromatics and flavor (especially the orange blossom).
In addition, Batch 1 does not limit our batches to just one kind of honey. Blending several kinds of honey before fermentation can open up a lot of potential and gives us a chance to add color, flavor, aroma, complexity, and structure to a finished mead.
One thing worth noting is that the very best honey will be fresh and right out of the beehive with minimal filtering. Honey with the very least amount of processing will retain more of its flavors and aromatics. That is Batch 1 Brewing's philosophy.
Just as there are variations and different type of honeys, there are different types of meads as well. Mead is pure honey and water fermented to create an alcoholic beverage. When you add other components, either for added sweetness, flavoring or aromatics, the mead takes on a different name. Here's a guide to the types of mead.
Braggot: Mead with flavoring derived from malted grain.
Capsicumel: Honey with chili pepper.
Cyser: A sweet mead to which apple juice has been added.
Dry: These meads have no added flavoring and use about 2.5 pounds of honey per gallon of mead.
Hippocras: Mead to which grape juice and spices have been added.
Melomel: Also called Mulsum; mead to which fruit juices other than apple or grape have been added.
Metheglin: Mead to which herbs and spices have been added.
Morat: Mead to which mulberries have been added.
Pyment: Mead to which grape juice has been added.
Rhodamel: Mead with rose petals.


text:
Q: What is the most efficient way to sum all columns whose name starts with a pattern? My goal is to sum all values in columns that start with the prefix skill_ in a data.table. I would prefer a solution using data.table but I am not picky.
My solution up to now:
> require(data.table)
> DT <- data.table(x=1:4, skill_a=c(0,1,0,0), skill_b=c(0,1,1,0), skill_c=c(0,1,1,1))
> DT[, row_idx := 1:nrow(DT)]
> DT[, count_skills :=
          sapply(1:nrow(DT),
                 function(id) sum(DT[row_idx == id,
                                     grepl("skill_", names(DT)), with=FALSE]))]

> DT
   x skill_a skill_b skill_c row_idx count_skills
1: 1       0       0       0       1            0
2: 2       1       1       1       2            3
3: 3       0       1       1       3            2
4: 4       0       0       1       4            1

But this becomes very slow when DT is very large. Is there a more efficient way to do this?

A: Solution using data.table and .SDcols.
require(data.table)

DT <- data.table(x=1:4, skill_a=c(0,1,0,0), skill_b=c(0,1,1,0),
                 skill_c=c(0,1,1,1))

DT[, row_idx := 1:nrow(DT)]

DT[, count_skills := Reduce(`+`, .SD), .SDcols = patterns("skill_")]
DT

A: A question about efficiency and performance always deserves benchmarks...
The size of your data is important as growth rate makes a huge difference...

Relative Benchmark Timings between 2^4 and 2^24.
Sizes along floor( 2^logb(10^( seq( 4, 24, .5 ) ), 10 ) )
Excerpt of benchmarks at 1 million rows...
## Unit: milliseconds
##             expr    min     lq median    uq   max neval
##    dplyr.sol(DT) 21.803 50.260 51.765 52.45 73.30   100
##  rowSums.sol(DT) 20.759 50.224 51.418 52.56 96.28   100
##   SDCols.sol(DT)  7.250  8.916 37.699 38.50 52.69   100
##     eval.sol(DT)  6.883  7.007  7.916  9.45 50.91   100

eval.sol is an answer that takes advantage of data.table's handling of expressions, in the below source...
library(compiler)
library(data.table)
suppressMessages(library(dplyr))
library(microbenchmark)

buildDT <- function(reps) {
  data.table(x=seq_len(reps*4),
               skill_a=rep(c(0,1,0,0),reps),
               skill_b=rep(c(0,1,1,0),reps),
               skill_c=rep(c(0,1,1,1),reps))
}

OP.sol <- function(DT) {
  DT[, row_idx := 1:nrow(DT)]
  DT[, count_skills :=
          sapply(1:nrow(DT),
                 function(id) sum(DT[row_idx == id,
                                     grepl("skill_", names(DT)), with=FALSE]))]
}

dplyr.sol <- function(DT)
  DT %.% select(starts_with("skill_")) %.% rowSums()

SDCols.sol <- function(DT)
  DT[, Reduce(`+`, .SD),
     .SDcols = grep("skill_", names(DT), value = T)]

rowSums.sol <- function(DT)
  rowSums(DT[,grep("skill_", names(DT)),with=FALSE])

eval.sol <- function(DT) {
  cmd <- parse(text=paste(colnames(DT)[grepl("^skill_", colnames(DT))],collapse='+') )
  DT[,eval(cmd)]
}

DT <- buildDT(1)
identical(OP.sol(DT)$count_skills, dplyr.sol(DT))

## [1] TRUE

identical(OP.sol(DT)$count_skills, rowSums.sol(DT))

## [1] TRUE

identical(OP.sol(DT)$count_skills, SDCols.sol(DT))

## [1] TRUE

identical(OP.sol(DT)$count_skills, eval.sol(DT))

## [1] TRUE

DT<-buildDT(2500)
nrow(DT)

## [1] 10000

microbenchmark( # OP.sol(DT), forget this method.
                dplyr.sol(DT),
                rowSums.sol(DT),
                SDCols.sol(DT),
                eval.sol(DT),
                times=100)

## Unit: microseconds
##             expr   min    lq median    uq   max neval
##    dplyr.sol(DT) 760.1 809.0  848.2 951.5  2276   100
##  rowSums.sol(DT) 580.5 605.3  627.6 745.7 28481   100
##   SDCols.sol(DT) 559.8 610.5  638.8 694.0  2016   100
##     eval.sol(DT) 636.4 677.7  692.4 740.5  2021   100

DT<-buildDT(25000)
nrow(DT)

## [1] 100000

microbenchmark( # OP.sol(DT), forget this method.
                dplyr.sol(DT),
                rowSums.sol(DT),
                SDCols.sol(DT),
                eval.sol(DT),
                times=100)

## Unit: milliseconds
##             expr   min    lq median    uq   max neval
##    dplyr.sol(DT) 2.668 3.744  4.045 4.573 33.87   100
##  rowSums.sol(DT) 2.455 3.339  3.756 4.235 34.19   100
##   SDCols.sol(DT) 1.253 1.401  2.179 2.392 31.72   100
##     eval.sol(DT) 1.294 1.427  2.116 2.484 32.02   100

DT<-buildDT(250000)
nrow(DT)

## [1] 1000000

microbenchmark( # OP.sol(DT), forget this method.
                dplyr.sol(DT),
                rowSums.sol(DT),
                SDCols.sol(DT),
                eval.sol(DT),
                times=100)

## Unit: milliseconds
##             expr    min     lq median    uq   max neval
##    dplyr.sol(DT) 21.803 50.260 51.765 52.45 73.30   100
##  rowSums.sol(DT) 20.759 50.224 51.418 52.56 96.28   100
##   SDCols.sol(DT)  7.250  8.916 37.699 38.50 52.69   100
##     eval.sol(DT)  6.883  7.007  7.916  9.45 50.91   100

identical(dplyr.sol(DT), rowSums.sol(DT))

## [1] TRUE

identical(dplyr.sol(DT), SDCols.sol(DT))

## [1] TRUE

identical(dplyr.sol(DT), eval.sol(DT))

## [1] TRUE

A: Here is a dplyr solution:
library(dplyr)

DT %>% mutate(count = DT %>% select(starts_with("skill_")) %>% rowSums())

A: Why not to use rowSums, It is generally efficient:
DT[, rowSums(.SD), .SDcols=patterns("skill_")]

redpajama_set_name: RedPajamaStackExchange


Ab circle pro replacement handle bars right & left.
AB Circle Pro Machine As Seen On TV Excellent ab circle pro arms for right and left only.
Check out these interesting ads related to "ab circle pro"
This is the Ab Circle Pro. genuine ab circle pro fitness equipment replacement knee pad ( 1 pad or 2 pads ) for shipping to p. friction-free track lets you pivot your body to work ab.
•Diameter: ab circle pro arms for right and left only.
Ab Circle Pro Exercise ab circle pro replacement end cap for the foot. Brand New ab circle pro for sale . So Grab yourself a bargain. Available for just 50 . Any question Please ask!..
Up for auction is a nice Ab Circle Pro ~ REPLACEMENT that is available in brand new condition. See the images and description. The offer price is 23.7 only. You can make you offer. You can pick it up at Elwood . Good luck guys!
New replacement rollers for use on ab circle pro .
Abdominal Circle Exerciser, im selling this because i really dont use it and i dont have time. ab circle pro, fast and easy ab workout device made of gym-quality steel.
Ab circle pro, excellent condition as it's barely been used.
Ab circle pro - $125 (horseheads). "If you can not see something you wanted, please drop me a line and i may be able to make to order for you"
Brand new ab circle pro abs exercise machine &. Slightly used ab circle proworks great. set of two u bolt pins for your ab circle pro.
Red and black ab circle pro for sale is pre-owned with care. It is in great condition and was used only once. Available for just 60 .
Genuine AB CIRCLE PRO for sale !!!New in box with tags.Normally retails for 64 . Available for just 21.59 . Any question Please ask!
You are bidding on a like new ab circle pro . Available for just 21.59 . Any question Please ask!


coal mining in andhra pradesh pdf Roadheaders. List of mines in India Wikipedia. coal mining in andhra pradesh pdf. We are the manufacturer of coal mining machine,roadheader,coal loader,tunnel mucking loader,backfilling machine,concerte pumping machine and so on. coal mining in andhra pradesh pdf manufacturer, supplier..
2018-11-27 · The Coking Coal Mines (Nationalization) Act, 1972 and the Coal Mines (Nationalization) Act, 1973 were repealed on 8 January 2018. In the final step toward denationalization, on 20 February 2018, the government permitted private firms to enter the commercial coal mining industry.
open cast in coal mining in andhra pradesh. Singareni Coal Mines Employees Of Andhra Pradesh Open cast coal mining will by its nature use up more of precious land It is used at coal mines in kothagudem of coal mines in andhra pradesh .
ocp 3 coal mines in karimnagar crusherasia. ocp 3 coal mines in karimnagar Crushers . when the open cast mines are started in andhra pradesh,karimnagar coal on fire.
Andhra Pradesh. 9194. 6748. 2985. 18927. Arunachal. Pradesh. 31. 40. 19. Chat Now; Assam: Militants open fire in coal mining company's workshop The . Nov 29, 2017 Suspected NSCNIM militants opened fire in a coal mining company's workshop and set ablaze vehicles in upper Assam's Tinsukia district along Arunachal Pradesh, police said today.
Open Cast Mining Coal Project In India - bikerpoint.eu. open cast coal mining project in india. Korba Coalfield Wikipedia. Gevra mine is an open cast mine complex at the town of Gevra that has been described as the largest open cast mine in India coal from open . Contact Supplier. open cast coal mining project in india - hotelrosim.
'We struck gold in a coal mine': In Telangana's coal .
Srirampur open cast block covers about 5.5 km 2 in Mancherial mandal of the Adilabad district, Andhra Pradesh (A.P) . The study area lies between North Latitude of 18°49′04″ to 18°51′12″ and East Longitude of 79°29′17″ to 79°32′02″.
2018-11-27 · The Singareni Collieries Company Limited or SCCL is a government-owned coal mining company in India. One of the public sector undertakings , the company is jointly owned by the Telangana government (51 percent) and the Union Government (49 percent).
Coalgate: India's largest open cast mine in land row .
2012-9-3 · Andhra Pradesh. Assam. . a land acquisition row threatens to disrupt production at India's largest open cast coal . But reserves in Gevra's existing mining area are low and fresh land needs to .
2015-1-8 · of coalmine of Godavarikhani Open Cast Project – III in Ramagundam Area and cultured by means of solid and liquid media. II. Materials And Methods 2.1. Study area Godavarikhani Open Cast Project – III coal mine (Ramagundam Area) of Singareni Collieries Company Limited is situated in Karim Nagar District of Andhra Pradesh.
open cast in coal mining in andhra pradesh - bnbinc.org. gravel for private use in andhra pradesh mining MDSW-Andhra Pradesh01,Scribd. 15 Oct 2009 Andhra Pradesh is the second largest state in terms of mineral resources .
2018-3-2 · The bench issued notices to the parties concerned and directed them to file their counter affidavits.
Coal mining - Wikipedia, the free encyclopedia. A coal mine in Bihar, India. A coal mine in Frameries.. Most open cast mines in the United States extract bituminous coal.
open cast in coal mining in andhra pradesh - Roadheaders. open cast in coal mining in andhra pradesh. We are the manufacturer of coal mining machine,roadheader,coal loader,tunnel mucking loader,backfilling machine,concerte pumping machine and so on. open cast in coal mining in andhra pradesh manufacturer, supplier.
Jobless Openings: The Expansion of Open Cast Coal Mining at the . Many of the coal mines, including those in Manuguru studied in this report, are ... The Government of Andhra Pradesh earned 1,676 crore in the years 2007 to 2010 . by Singareni in 47 mines spread across the four Districts of Khammam,.
Hydrogeological and groundwater modeling studies to .
Madhucon Group has started open cast Coal mining in Indonesia and it owns two mining licenses in Indonesia. One of them at South Sumatra which is having a coal reserve of 900 million tons. The coal has higher calorific value and less ash content compared to domestic coal.
West Godavari of Andhra Pradesh eastern region of India. Its aerial extent covers about 27% of the total area. Kothagudem coal belt is located in Southern part of Godavari valley coal field. Goutham (GKOCM) is located in Southeastern part of Kothagudem coal belt of Khammam district of Andhra Pradesh.
coal mining in tajikistan . Mining in Tajikistan - Wikipedia, the free encyclopedia. Tajikistan hosts the annual Mining World Tajikistan, an international .. both the north and south and brown coal is produced at Shurab in the Leninabad region.
; Coal mining - Wikipedia. coal mines godavarikhani andhra pradesh . sccl coal mines 9 incline godavarikhani karimnagar,sand .: ; manuguru singareni coal mines map khammam . of coal mining at Manuguru 2004 KHAMMAM DISTRICT.
list of coal mines in andhra pradesh - , coal mines places in andhra pradesh - Why are open-earth coal mines among the It has been reported during the present heat-wave that places in Odisha, Telengana, and Andhra Pradesh have , Get Price list of coal mines in andhra pradesh - refloresta Mining Map: Hotspots - Andhra Pradesh The state has .
2018-11-24 · Medapalli Open Cast Project (MOCP) owned by M/s Singareni Collieries Company Limited (SCCL), Andhra Pradesh, India where "Highwall mining" is practiced lies in the immediate vicinity of a .
Coal Mines In Andhra Pradesh. Find the cheap Coal Mines In Andhra Pradesh, Find the best Coal Mines In India Costume Madhya Pradesh Maharashtra Andhra Art - Original Halftone Print. Get Price Truck Tyre 1000-20. Chinese tires brand BOSTONE CHANGSHENG nylon 1000-20 truck tires 900 1200 20 mine truck. Add to Compare. Response Rate: 50.8%. Contact .
2016-4-27 · Midwest has a strong team of mining engineers such as Mr. Aja Babu, who has vast experience in Open cast and Under Ground coal mining. He served in Singareni Coal Collieries for a long time as senior mining executive engaged in coal mining.


text:
function evenPositionElement(input) {
    let output = ''
    for (let index = 0; index < input.length; index += 2) {
        output += input[index] + ' '
    }
    console.log(output)
}


Intimate Delhi Wedding held in Belmond Hotel with a beautiful sikh bride!
Love can be found in the strangest places. Vindeep and Ravleen who just got hitched at Belmond Hotel, Chattarpur, can attest to this fact! They met on a matrimonial website and began talking. 11 months later, Vindeep flew all the way from the US to India to spend time with Ravleen and get to know her better. Well, how could cupid not strike! In love and willing to get married, their parents stepped in and here we are!
Check out this beautiful fairytale below!


text:
Cooperación administrativa
Establishment of National Competitiveness Boards within the Euro Area
ECO/395-EESC-2015-06711-00-00-ac-tra
Thomas DELAPINA (Austria)
Co-rapporteur:
David CROUGHAN (Ireland)
Competitiveness is not an end in itself. It is only a sensible objective if it improves people's well-being in practice. The EESC therefore recommends that an updated definition of competitiveness ("competitiveness 2.0") be used in future, taking into account "the ability of a country to deliver the beyond-GDP goals for its citizens". The EESC urges that future discussions refer not to "competitiveness boards" but to "boards for competitiveness, social cohesion and sustainability". The EESC asks the Commission to present concrete proposals on how the following necessary requirements with regards to these boards can be safeguarded: accountability, legitimacy and transparency; representation of balanced unbiased expertise; non-binding character of proposals of the boards; inclusion of the dual role of wages, both as a cost factor and as the main determinant of domestic demand.
Dictamen del CESE: Establishment of National Competitiveness Boards within the Euro Area
Steps towards Completing Economic and Monetary Union
C(2015) 8000 final COM(2015) 600 final
Carmelo CEDRONE (Italy)
The Commission communication on Steps towards completing EMU can provide a great opportunity to launch a debate at political level and with civil society to draw up conclusive proposals which go further than the current ones. It would be more useful to draw up a proposal for the European Semester as part of a comprehensive agreement on economic governance that goes beyond the status quo, changing macroconditionality and strengthening the Interparliamentary Conference. Democratic legitimacy is not tackled seriously by any of the Commission's operational proposals. The tripartite social dialogue could contribute to this matter. On the basis of its own roadmap, the EESC is committed to putting forward, possibly with the Commission, a plan on stage two (Completing EMU 2017-2025) to discuss these issues in the Member States, beginning with the euro area countries.
Dictamen del CESE: Steps towards Completing Economic and Monetary Union
Tax Transparency Package
COM(2015) 135 final - 2015/0068 (CNS)COM(2015) 129 final - 2015/0065 (CNS)
The EESC welcomes the Proposal for a Directive presented by the European Commission, through which the Commission is continuing to implement the measures included in the action plan to strengthen the fight against tax fraud and tax evasion. Information on advance tax rulings and advance pricing arrangements is very important and can help the Member States to trace artificial transactions. The EESC recommends that the Member States make efforts to ensure that the provisions of the proposal for a directive are transposed correctly.
Dictamen del CESE: Tax Transparency Package
Completing EMU: The political pillar
Carmelo CEDRONE and Joost VAN IERSEL
The EESC is of the opinion that persisting imbalances as well as the creation of trust and confidence across Europe require more effective and democratic economic governance, notably in the Eurozone. It has become clear that the current system of rules underpinning the EU, and particularly the euro area, has created confusion on the legal, institutional and democratic fronts. A new approach is therefore needed. With this in mind, the Committee presents its contribution to the new five presidents' report which will propose next steps on better economic governance to the European Council in June. The EESC contribution summarises the different stages and puts forward institutional proposals and preparatory initiatives regarding the completion of the political pillar of the Economic and Monetary Union.
Dictamen del CESE: Completing EMU: The political pillar
Preparing for Next Steps on Better Economic Governance in the Euro Area - presentation by Baudouin Regout (European commission)
Completing Political Union: How the Euro-Union could work - presentation by Ulrike Guérot (The European Democracy Lab, European School of Governance, Berlin)
The political and institutional aspects of further euro area integration - presentation by Elmar Brok (European Parliament)
The political and institutional aspects of further EMU area integration - presentation by Bernard Snoy (ELEC)
The political and institutional aspects of further euro area integration - presentation by Johannes Lindner (ECB)
An Investment Plan for Europe
COM(2014) 903 finalCOM(2015) 10 final
Michael SMYTH (Diversity Europe - GR III / United Kingdom)
The EESC welcomes the Investment Plan for Europe as a step in the right direction, which however faces serious questions about the Plan's size and timescale, the high degree of leverage expected and the potential flow of suitable projects. The Plan proposes that contributions to the European Fund for Strategic Investments (EFSI) from Member States will not be included in budget deficit calculations and this is to be welcomed, but it begs the question as to why ongoing strategic public infrastructure expenditures are not treated in the same way. Strategic public investment which underpins present and future economic development should be incentivised by a more benign European fiscal framework.
Dictamen del CESE: An Investment Plan for Europe
Achim Truger - Implementing the Golden Rule for Public Investment in Europe
Standard VAT declaration
ECO/358-EESC-2013-6872
COM(2013) 721 final - 2013/0343 (CNS)
Viliam PALENIK (Diversity Europe - GR III / Slovakia)
Feb 26, 2014 Feb 27, 2014
Dictamen del CESE: Standard VAT declaration
EU Strategy for the Adriatic and Ionian Region (EUSAIR)
Dimitris DIMITRIADIS (Employers - GR I / Greece)
The EESC welcomes the special attention devoted to drawing up a European Union Strategy for the Adriatic and Ionian Region (EUSAIR), in order to support cohesion and competitiveness in the light of challenges that cannot be satisfactorily resolved by single regions or countries through the usual means. The EESC believes that EUSAIR must adopt a comprehensive programme with an action-oriented list of projects and schemes, and strongly recommends that better use be made of the private sector's potential to attract investment (both local and international) and to create business opportunities. Simultaneously, the strategy should include a stronger social dimension, in order to better support inclusive growth in the Adriatic and Ionian region.
European Union Solidarity Fund
COM(2013) 522 final - 2013/0248 (COD)
INT/713-EESC-2013-5037
Mr Paulo Barros Vale (Employers - GR I / Portugal)
Dictamen del CESE: e-Procurement
EC presentation 17.07.2013
Mr Thomas McDonogh (Employers - GR I / Ireland)
Dictamen del CESE: eCall
Sección de Mercado Único, Producción y Consumo (INT)


text:
Suquamish church cancels peace vigil after warning of threats toward 'liberal' churches
Thurston County Sheriff K-9 Arlo to return home this week after undergoing surgery in Oregon
Drive Times
Western Washington forecast
'Earthquake swarm' felt on Mt. Hood Sunday afternoon
Sounders FC
Silvi Knows
Report: Jordan Morris heading to Swansea City
Are You Okay?: Maintaining relationships despite political differences
5 things you need to know this Monday
Seattle, WA »
Vaccine Facts
Stand For Truth
Your Money, Your Future
Explore the PNW
Children's Healthlink
Seattle's Leading Local News: Weather, Traffic, Sports and More | Seattle, Washington | KING5.com
Incarcerated women take screenwriting class through Seattle film school
TheFilmSchool has a new focus to rethink what screenwriting education can be. It recently partnered with the Washington Corrections Center for Women in Gig Harbor to provide screenwriting courses to its prisoners.
Author: KING Staff
SEATTLE — Veteran actor Tom Skerritt has more than 150 acting roles under his belt. Perhaps you didn't know that he helped start a film school in Seattle more than a decade ago.
TheFilmSchool is a non-profit that focuses on intensive training in screenwriting and producing.
Now TheFilmSchool has a new focus to re-think what screenwriting education can be. It recently partnered with the Washington Corrections Center for Women in Gig Harbor to provide screenwriting courses to its prisoners.
"I felt like this was one of the greatest ways we could give back to our community," said school Director Jonathan Keasey.
Led by TheFilmSchool's professional writers, the Prison Screenwriting Initiative gives a forum where prisoners can discuss films and draft screenplays. The courses are designed to be both a cathartic tool for healing and a job skill booster for prisoners about to re-enter society.
Award-winning writer, director, and producer Lindy Boustedt is the lead teacher of their new Prison Screenwriting Initiative.
"How can we reach out to voices that are marginalized and unheard and help them realize they can be the heroes of their own story? And they can write and use these screenwriting skills to make a film but also to learn how to write the story of their life," Boustedt said.
The course kicked off in April 2019. Students are about halfway through it. They're moving into the process of putting pen to paper.
"They're really starting to get the sense that screenwriting is not as easy as they thought it was. But they're jazzed. They're being very open and very honest while figuring out how to tell a story from their childhood," Boustedt said. "When you're writing a story, you have to understand all sides. I think that's a very powerful tool for these women. Sometimes just being able to put yourself in somebody else's shoes is a really powerful learning tool.
Skerritt says writing can be a useful tool in getting to know yourself better.
"Self-realization comes out through storytelling. With a piece of writing, you don't have to show it to anybody. Stop worrying about whether anybody is going to make fun of you for what you're trying to do," Skerritt said. "You just have to know you have something that is unique to you alone, because no one in the history of mankind has ever lived you."
Community support allows TheFilmSchool to provide scholarships for budding filmmakers, as well as to underwrite community outreach programs such as our Prison Screenwriting Initiative. Donations are 100% tax deductible.
© 2021 KING-TV. All Rights Reserved.
KING would like to send you push notifications about the latest news and weather.


text:
Q: Error of using epsfig I having an error below

\begin{figure}[ht!]
\begin{minipage}[h]{1.08\columnwidth}
\centering
 \centerline{\epsfig{figure/test123.eps,width=1\columnwidth}}
    \end{minipage}
    \end{figure}

A: The actual error message is because you have the incorrect syntax for \epsfig the image name should be given as file=figure/test123.eps and you have omitted the file= key.
However epsfig was written just to help convert documents that were old at the time (1993) to standard latex there is no reason to use it now.
Also minipage does not have an [h] option (unknown options are silently ignored) but you don't need a minipage here anyway as the figure environment already acts as a containing box, so you just need:
\begin{figure}[htp]
\includegraphics[width=\columnwidth]{figure/test123}
\end{figure}


text:
Europe|Blasts Could Derail Medvedev's Softer Tack in the Caucasus
Blasts Could Derail Medvedev's Softer Tack in the Caucasus
At the Park Kultury subway station in Moscow on Tuesday, a photo had been posted of a girl who was missing after the bombing there the day before.Credit...James Hill for The New York Times
By Ellen Barry
MOSCOW — When two bombs ripped through Moscow subway stations at rush hour on Monday morning, Russia's leaders reached for the kind of hunt-them-down-and-kill-them statements that propelled the country through two brutal wars in the Caucasus.
President Dmitri A. Medvedev boasted that previous bombers had been "annihilated to ashes," calling them "beasts, simply." Prime Minister Vladimir V. Putin told the police to "drag them out of the bottom of the sewer and into the light of God."
So it was a surprise, barely a day after images of bloodied commuters flooded Russian airwaves, when Mr. Medvedev made a point of publicly discussing poverty and unemployment in the North Caucasus, which he has said are the root causes of violence there. He said that resolving those problems was "even harder than looking for and destroying terrorists," but that he planned to continue pursuing both aims.
"People want a normal and decent life, no matter where they live," he said, in a meeting with his top human rights adviser. "The federal authorities, along with the authorities in the Caucasus region, are obliged to create these conditions."
Monday's bombings came at an uncertain moment for Russia's Caucasus policy, which had been wavering between the muscular clampdown championed by Mr. Putin as president and the cautious liberalization introduced after Mr. Medvedev took office.
If attacks become a regular occurrence in Moscow, as they were for most of Mr. Putin's presidency, "it means war, war against terrorism," said Aleksei V. Malashenko, a Caucasus specialist at the Carnegie Moscow Center. If they are not repeated, he said, Mr. Medvedev could continue to steer away from Mr. Putin's approach, which relied almost entirely on force.
Mr. Malashenko pointed especially to a decision Mr. Medvedev made early this year, when he appointed the businessman Aleksandr G. Khloponin — not a general or a veteran of the F.S.B. security service — as his special envoy to the region, giving him the task of creating new jobs.
"It meant they recognized the old approach was failing," he said. "I think this is the last hope. If it fails once again, it is over."
No group has claimed responsibility for the bombings, which killed 39 people, but the authorities have said they believe that the attackers were from the North Caucasus, the restive border region that includes Chechnya, Ingushetia and Dagestan.
A law enforcement official, speaking on condition of anonymity, told the Interfax news agency on Tuesday that two female suicide bombers and their male companion had arrived in Moscow on Monday morning on a bus that carried shuttle traders from the North Caucasus.
The official said the bus driver had identified the women from photos. He said suicide bombers had used the bus system to carry out two subway attacks in 2004, since "the passenger flow on private buses, unlike trains and planes, is virtually impossible to control," according to Interfax.
Russian politicians on Tuesday pressed their leaders to take a tougher line on terrorism. State prosecutors revived a proposal to collect fingerprints and DNA samples from all citizens of the North Caucasus.
Aleksandr Gurov, a deputy in the State Duma, complained that political correctness was tying authorities' hands when dealing with ethnic minorities.
"How much can we play at so-called tolerance?" said Mr. Gurov, who sits on the Duma's security committee, to the Web site GZT.ru. "How many cases have there been when Caucasians beat up policemen and the police could do nothing about it? What is this outrage?"
Magomed Mutsolgov, who heads a nonprofit organization in the republic of Ingushetia that documents abductions and killings during antiterrorist operations, said he worried that policies in the region were bound to swing back to patterns set under Mr. Putin.
One of Mr. Medvedev's first major appointments was Yunus-Bek Yevkurov, who succeeded Ingushetia's hard-line leader. Mr. Yevkurov reached out to the opposition and invited citizens to tell him their grievances. The new leader, Mr. Mutsolgov said, "really does have liberal views, but he is not supported by the law enforcement structures."
Asked if Monday's attacks meant the experiment was coming to an end, Mr. Mutsolgov said, "I don't think so, and I certainly don't want it, but it is absolutely possible."
The choice of Mr. Khloponin, too, has underlined the difference between Mr. Medvedev and Mr. Putin, who was willing to extend extraordinary benefits in exchange for security guarantees. At a meeting with senators last month, Mr. Khloponin publicly challenged Chechen strongman Ramzan A. Kadyrov, saying he traveled internationally as if he were the president of an independent country.
"Did he think Saudi Arabia was going to give him money?" Mr. Khloponin asked about Mr. Kadyrov, according to the newspaper Kommersant. "We have a Foreign Ministry for that kind of negotiation."
Such a rebuke would have been unlikely under Mr. Putin, who honored Mr. Kadyrov with the Hero of Russia medal, the country's highest honor, even as human rights organizations documented his forces' use of intimidation and torture.
"The policy that Putin used in the North Caucasus was pure force," said Tanya Lokshina, who researches the region for the Moscow office of Human Rights Watch. "Today, what we see is a bunch of confusing tendencies. On the one hand the policy of force continues, but at the same time Khloponin is appointed, who is no man of force, and whose task is to focus on the social infrastructure."
Thomas de Waal, the co-author of a book about the first Chechen war from 1994 to 1996, said he had watched Russia's Caucasus policy evolve gradually since the days of Boris N. Yeltsin.
"They have realized that complete colonial subjugation is not an option," said Mr. de Waal, now a senior associate at the Carnegie Endowment in Washington. Since that approach demanded too much manpower and resources, Russia adopted the model the British used in India, Mr. de Waal said, "co-opting the locals to run your strategy."
"The strategy is cleverer, but a long-term strategy means having a different idea of what it means to be Russian, and that they are 'us' and not 'others,' " he said. "I think they are a million miles away from that kind of understanding, which is what is needed to make the North Caucasus part of Russia."


text:
Gunmen Abduct U.S. Man In Brazen Raid In Pakistan
Gunmen kidnapped an American development expert after tricking his guards and breaking into his house in Pakistan on Saturday, a brazen raid that alarmed aid workers, diplomats and other foreigners who already tread carefully in this country rife with Islamic militancy and anti-U.S. sentiment.
The U.S. Embassy identified the victim as Warren Weinstein. Weinstein is the Pakistan country director for J.E. Austin Associates, a development contractor that has received millions of dollars from the aid arm of the U.S. government, according to a profile on LinkedIn, a networking website.
Police declined to speculate on the motive, and no group immediately claimed responsibility. But kidnappings for ransom are common in Pakistan, with foreigners being occasional targets. Criminal gangs are suspected in most abductions, but Islamic militants, are believed to also use the tactic to raise money.
Lahore has seen a number of militant attacks, and the Punjab region where it is located is home to several of Pakistan's top militant networks, some of which are suspected of ties to Pakistani intelligence.
Police said the American, believed to be in his 60s, had returned to his home in the eastern city of Lahore the previous night from the capital, Islamabad. He had told his staff that would be wrapping up his latest project and moving out of Pakistan by Monday, police officer Tajammal Hussain said.
According to Pakistani police, two of the kidnappers showed up at Weinstein's house Saturday and told the guards inside the gate of the walled compound that they wanted to give them food, an act of sharing common during the Muslim holy month of Ramadan, which started early this month.
The guards opened the gate, and five other men suddenly appeared. The armed assailants overpowered the guards and stormed into the house. Some gunmen are believed to have entered through the back. They snatched the American from his bedroom but took nothing else.
Security forces were checking vehicles in and around Lahore in hopes of finding Weinstein, said Ghulam Mahmood Dogar, a top police official.
In Washington, the State Department said it was in touch with Weinstein's family and that U.S. officials in Pakistan were working with local authorities on the case. Spokeswoman Joanne Moore would not comment further, citing privacy concerns.
Weinstein headed a program trying to strengthen the competitiveness of Pakistani industries, according to the biographical section of his company's website, which was taken down late Saturday. The LinkedIn profile says Weinstein has been in Pakistan for seven years.
Calls to the company headquarters in Virginia were not immediately answered, but its website describes Weinstein as a development expert with 25 years experience and a Ph.D. in international law and economics.
"He's a short, funny man with a quick wit," said Raza Rumi, a Pakistani columnist who said the American could speak a fair amount of Urdu. "He's a very laid-back guy, not too worried about security issues, not really paranoid at all."
The audacious nature of Saturday's abduction raised the likelihood that diplomatic missions, aid groups and contracting companies would further tighten security. Already, many groups severely restrict where their international staff can travel because of kidnapping fears.
The security concerns heavily impact U.S. aid programs and have served to slow down the disbursement of billions of dollars in promised funds because they limit where American diplomats are allowed to go and what projects can be undertaken safely.
Americans in Pakistan are considered especially at risk because militants oppose Islamabad's alliance with Washington and the war in Afghanistan. The unilateral U.S. raid that killed al-Qaida chief Osama bin Laden on May 2 in northwest Pakistan only added to tensions between the two countries.
"They've become very, very brazen," Zahid Elahi, managing director in Pakistan for Development Alternatives Inc., another U.S.-based contracting firm, said of the kidnappers. "We just need to get our heads together because it's only just happened."
He said he would definitely advise international colleagues to lay low in the coming days.
A Western aid worker said the raid on Weinstein's home is "a new wrinkle." He called it especially worrying because companies such as J.E. Austin Associates tend to spend a great deal on security for their staff, even more than many humanitarian groups.
"They really, really are risk averse," the aid worker said, speaking on condition of anonymity because of security concerns.
Several other foreigners have been abducted in Pakistan in recent years.
John Solecki, an American with the U.N.'s refugee agency in southwest Baluchistan, was held captive by ethnic Baluchi separatists for more than two months in early 2009. A 5-year-old British boy, Sahil Saeed Naqqash, was kidnapped for two weeks from his grandparents' house in central Pakistan in March 2010.
The Pakistani Taliban claim to be holding a Swiss man and woman kidnapped earlier this summer from Baluchistan. The militant group, which is based in the northwest tribal belt bordering Afghanistan, says it will free the pair if the U.S. releases a Pakistani woman convicted of trying to kill Americans.
The U.S. State Department recently issued a travel warning for its citizens saying that American diplomats are facing increased harassment and they, along with aid workers and journalists, have been falsely identified as spies in the local media.
U.S. citizens also have come under greater scrutiny by the Pakistani government this year, especially since January, when an American CIA contractor shot to death two Pakistanis he said were trying to rob him in Lahore.
American lawmakers and officials have made a slew of trips in recent weeks to try to maintain the relationship with Islamabad.
On Saturday, U.S. Sen. John McCain arrived in Islamabad and met with top officials including Pakistani Prime Minister Yousuf Raza Gilani and President Asif Ali Zardari. In statements afterward, Gilani and Zardari said Pakistan desires an enduring, multidimensional partnership with the United States.
This program aired on August 13, 2011. The audio for this program is not available.


Springhurst is a large, unincorporated area in Northeast Louisville, Kentucky, USA. Developed heavily in the 1990s, it is now considered an edge city of Louisville, and is home to one of the largest shopping areas in the city, with the largest concentration of shops along the Gene Snyder Freeway from Westport Road to Ballardsville Road. Large residential areas also exist on either side of the shopping areas.
Springhurst is a fantastic place where people from a variety of backgrounds forge their lives together in this great community.
In Springhurst there is also a well balanced mix of housing from single family homes, codo's, apartments and more.
Springhurst home prices are very attractive and range from a price of just $134,086. to the $400,000's.


Loris Karius is considering his future at Liverpool after the £65million record capture of Brazil international goalkeeper Alisson.
Karius could leave Liverpool before the transfer window closes, less than three months after his disastrous performance in the Champions League final against Real Madrid.
The German is understood to be bitterly disappointed with manager Jurgen Klopp's decision to bring in Alisson from Roma and will review his options ahead of the forthcoming campaign.
Karius is also believed to be shocked by the lack of clarity over Klopp's decision to bring in a new goalkeeper this summer.
Klopp has openly admitted that Alisson will be his new No 1 and the future appears bleak for Karius, who was unconvincing in the 3-1 defeat to Borussia Dortmund in the pre-season friendly in Charlotte on Sunday.
"Of course that's not perfect for me, but I cannot say much more about that either," he said.
After the game Karius took aim at his critics with an Instagram post by writing: "To those who take joy in seeing other people fail or suffer, I feel for you. Whatever it is that's happening in your life to hold this much anger and hate, I pray that it passes and good things come to you."
Karius, a £4.7m signing from Mainz in May 2016, is now expected to hold talks with Klopp over his future ahead of the new Premier League season.
There are also doubts over Belgium international Simon Mignolet's future but Karius feels let down by Liverpool over the expensive addition of Alisson and appears likely to be the one who leaves.
Iker Casillas, the Porto goalkeeper and former Spain international, has offered his support to Karius, who was widely criticised for his part in two goals conceded against Real Madrid in the final.
"Will this attack @LorisKarius ever end? I'm talking about him like so many other goalkeepers," Casillas wrote on his personal Twitter account. "There are many more serious problems in the world, f***! Leave the kid alone! He's also a person. As we all are!"
Liverpool will fly to New York on Tuesday morning ahead of their second International Champions Cup game, when they will face Manchester City the following day.