#include "QFramework/TQStringUtils.h"
#include "QFramework/TQValue.h"

#include <iostream>
#include <fstream>
#include <sstream>
#include <cstdlib>

////////////////////////////////////////////////////////////////////////////////////////////////
//
// TQValue:
//
// The TQValue class is the base class for several classes wrapping primitive data types. It
// allows to specify a name associated with the value, which is used to return a hash value
// when calling TQValue::Hash().
//
////////////////////////////////////////////////////////////////////////////////////////////////

ClassImp(TQValue)


//__________________________________________________________________________________|___________

TQValue::TQValue() : TObject() {
  // Default constructor of TQValue class:

  fName = "undefined_name";
}


//__________________________________________________________________________________|___________

TQValue::TQValue(const TString& name) : TObject() {
  // Constructor of TQValue class:

  fName = name;
}


//__________________________________________________________________________________|___________

TQValue::TQValue(TQValue * value, const TString& newName) : TObject() {
  // Copy a TQValue object

  if (value) {
    if (newName.IsNull())
      fName = value->GetName();
    else if (isValidName(newName))
      fName = newName;
    else
      fName = "invalid_name";
  } else {
    fName = "invalid_value";
  }
}


//__________________________________________________________________________________|___________

bool TQValue::setName(const TString &name) {
  // set the name of this object

  if (isValidName(name)) {
    fName = name;
    return true;
  } else {
    return false;
  }
}


//__________________________________________________________________________________|___________

TString TQValue::getName() {
  // retrieve the name of this object
  return this->fName;
}

//__________________________________________________________________________________|___________

const TString& TQValue::getNameConst() const {
  // retrieve a const reference to the name of this object
  return this->fName;
}



//__________________________________________________________________________________|___________

const TString& TQValue::getValidNameCharacters() {
  // Return a string containing all valid characters that can be used as a
  // TQValue's name

  return TQStringUtils::getDefaultIDCharacters();
}


//__________________________________________________________________________________|___________

bool TQValue::isValidName(const TString& name) {
  // Return true if <name> is a valid name for a TQValue object

  return TQStringUtils::isValidIdentifier(name, getValidNameCharacters(), 1, -1);
}


//__________________________________________________________________________________|___________

TQValue * TQValue::newInstance(const TString& name, double value) {
  // Create a new instance of TQValueDouble

  return TQValueDouble::newInstance(name, value);
}


//__________________________________________________________________________________|___________

TQValue * TQValue::newInstance(const TString& name, int value) {
  // Create a new instance of TQValueInteger

  return TQValueInteger::newInstance(name, value);
}


//__________________________________________________________________________________|___________

TQValue * TQValue::newInstance(const TString& name, bool value) {
  // Create a new instance of TQValueBool

  return TQValueBool::newInstance(name, value);
}


//__________________________________________________________________________________|___________

TQValue * TQValue::newInstance(const TString& name, const TString& value) {
  // Create a new instance of TQValueString

  return TQValueString::newInstance(name, value);
}

TQValue * TQValue::newInstance(const TString& name, const char* value) {
  // Create a new instance of TQValueString (additional overload, see header file for reason!)

  return TQValueString::newInstance(name, value);
}

//__________________________________________________________________________________|___________

TQValue * TQValue::newDouble(const TString& name, double value) {
  // Create a new instance of TQValueDouble

  return TQValueDouble::newInstance(name, value);
}


//__________________________________________________________________________________|___________

TQValue * TQValue::newInteger(const TString& name, int value) {
  // Create a new instance of TQValueInteger

  return TQValueInteger::newInstance(name, value);
}


//__________________________________________________________________________________|___________

TQValue * TQValue::newBool(const TString& name, bool value) {
  // Create a new instance of TQValueBool

  return TQValueBool::newInstance(name, value);
}


//__________________________________________________________________________________|___________

TQValue * TQValue::newString(const TString& name, const TString& value) {
  // Create a new instance of TQValueString

  return TQValueString::newInstance(name, value);
}


//__________________________________________________________________________________|___________

ULong_t TQValue::Hash() const {
  // Return a hash value computed from the name of this object. The name used is
  // the same as the one returned by TQValue::GetName()

  return fName.Hash();
}


//__________________________________________________________________________________|___________

const char * TQValue::GetName() const {
  // Return the name of this object. The name returned is the same as the one used
  // to computed the hash value returned by TQValue::Hash()

  return fName.Data();
}


//__________________________________________________________________________________|___________

int TQValue::Compare(const TObject * obj) const {

  if (obj && obj->InheritsFrom(TQValue::Class())) {

    /* cast the object to compare to */
    TQValue * value = (TQValue*)obj;

    /* compare doubles */
    if (isValidDouble() && value->isValidDouble()) {
      if (getDouble() < value->getDouble())
        return -1;
      else if (getDouble() > value->getDouble())
        return 1;
      else
        return 0;
      /* compare strings */
    } else {
      int compare = getString().CompareTo(value->getString());
      if (compare < 0)
        return -1;
      else if (compare > 0)
        return 1;
      else
        return 0;
    }
  } else {
    /* object are not comparable */
    return -1;
  }
}


//__________________________________________________________________________________|___________

bool TQValue::IsSortable() const {

  return true;
}


//__________________________________________________________________________________|___________

bool TQValue::isEquivalentTo(TQValue * val) const {
  
  if (!val) {
    return false;
  }
  //first check trivial comparisons, if the underlying type of both instances is identical
  if (this->isDouble() && val->isDouble()) {
    return this->getDouble() == val->getDouble();
  }
  if (this->isBool() && val->isBool()) {
    return this->getBool() == val->getBool();
  }
  if (this->isInteger() && val->isInteger()) {
    return this->getInteger() == val->getInteger();
  }
  if (this->isString() && val->isString()) {
    return  this->getString().EqualTo(val->getString());
  }
  
  //check via provided auto-conversion capabilities:
  // check double values
  if (this->isValidDouble() != val->isValidDouble()) {
    return false;
  }
  if (this->isValidDouble() && val->isValidDouble() && this->getDouble() != val->getDouble()) {
    return false;
  }
  // check bool values
  if (this->isValidBool() != val->isValidBool()) {
    return false;
  }
  if (this->isValidBool() && val->isValidBool() && this->getBool() != val->getBool()) {
    return false;
  }
  // check integer values
  if (this->isValidInteger() != val->isValidInteger()) {
    return false;
  }
  if (this->isValidInteger() && val->isValidInteger() && this->getInteger() != val->getInteger()) {
    return false;
  }
  // check string values
  if ( ! this->getString().EqualTo(val->getString()) )  {
    return false;
  }
 
  return true;
}


//__________________________________________________________________________________|___________

bool TQValue::isDouble() const {
  // Return true if the value wrapped by this object is a double

  return false;
}


//__________________________________________________________________________________|___________

bool TQValue::isInteger() const {
  // Return true if the value wrapped by this object is an integer

  return false;
}


//__________________________________________________________________________________|___________

bool TQValue::isBool() const {
  // Return true if the value wrapped by this object is a bool

  return false;
}


//__________________________________________________________________________________|___________

bool TQValue::isString() const {
  // Return true if the value wrapped by this object is a string

  return false;
}


//__________________________________________________________________________________|___________

TString TQValue::getValueAsString() const {

  return getString();
}


//__________________________________________________________________________________|___________

TQValue::~TQValue() {
  // Destructor of TQValue class:

}




////////////////////////////////////////////////////////////////////////////////////////////////
//
// TQValueDouble:
//
//
////////////////////////////////////////////////////////////////////////////////////////////////

ClassImp(TQValueDouble)


//__________________________________________________________________________________|___________

TQValueDouble::TQValueDouble() : TQValue() {
  // Default constructor of TQValueDouble class:

  fValue = 0.;
}


//__________________________________________________________________________________|___________

TQValueDouble::TQValueDouble(const TString& name, double value) : TQValue(name) {
  // Constructor of TQValueDouble class:

  fValue = value;
}


//__________________________________________________________________________________|___________

TQValueDouble::TQValueDouble(TQValueDouble * value, const TString& newName) : TQValue(value, newName) {
  // Copy a TQValueDouble object
 
  if (value)
    fValue = value->getDouble();
  else
    fValue = 0.;
}


//__________________________________________________________________________________|___________

TQValueDouble * TQValueDouble::newInstance(const TString& name, double value) {
  // Create a new instance of TQValueDouble

  if (isValidName(name))
    return new TQValueDouble(name, value);
  else
    return 0;
}


//__________________________________________________________________________________|___________

TQValue * TQValueDouble::copy(const TString& newName) {
  // Return a copy of this TQValueDouble object

  if (newName.IsNull() || isValidName(newName))
    return new TQValueDouble(this, newName);
  else
    return 0;
}


//__________________________________________________________________________________|___________

double TQValueDouble::getDouble() const {
  // Return the value wrapped by this object

  return fValue;
}


//__________________________________________________________________________________|___________

int TQValueDouble::getInteger() const {
  // Return the value wrapped by this object as int

  return (int)fValue;
}


//__________________________________________________________________________________|___________

bool TQValueDouble::getBool() const {
  // Return true if the value wrapped by this object is not equal to zero

  return (fValue != 0.);
}


//__________________________________________________________________________________|___________

TString TQValueDouble::getString() const {
  // Return a string describing the value wrapped by this object

  return TString::Format("%.15g", fValue);
}


//__________________________________________________________________________________|___________

bool TQValueDouble::isDouble() const {
  // Return true if the value wrapped by this object is a double

  return true;
}


//__________________________________________________________________________________|___________

bool TQValueDouble::isValidDouble() const {
  // Return true if the value wrapped by this object can be cast to a double (true
  // in this case)

  return true;
}


//__________________________________________________________________________________|___________

bool TQValueDouble::isValidInteger() const {
  // Return true if the value wrapped by this object can be cast to an integer (true
  // in this case)

  return true;
}


//__________________________________________________________________________________|___________

bool TQValueDouble::isValidBool() const {
  // Return true if the value wrapped by this object can be cast to a bool (true in
  // this case)

  return true;
}


//__________________________________________________________________________________|___________

TString TQValueDouble::getTypeAsString() const {
  // Return a string describing the type of value wrapped by this object ("double"
  // in this case)

  return "double";
}


//__________________________________________________________________________________|___________

TString TQValueDouble::getAsString(bool forceQuotes) const {
  // Return a string describing the value including its name

  if (forceQuotes)
    return TString::Format("%s = \"%.15g\"", GetName(), getDouble());
  else
    return TString::Format("%s = %.15g", GetName(), getDouble());
}


//__________________________________________________________________________________|___________

TQValueDouble::~TQValueDouble() {
  // Destructor of TQValueDouble class:

}




////////////////////////////////////////////////////////////////////////////////////////////////
//
// TQValueInteger:
//
//
////////////////////////////////////////////////////////////////////////////////////////////////

ClassImp(TQValueInteger)


//__________________________________________________________________________________|___________

TQValueInteger::TQValueInteger() : TQValue() {
  // Default constructor of TQValueInteger class:

  fValue = 0;
}


//__________________________________________________________________________________|___________

TQValueInteger::TQValueInteger(const TString& name, int value) : TQValue(name) {
  // Constructor of TQValueInteger class:

  fValue = value;
}


//__________________________________________________________________________________|___________

TQValueInteger::TQValueInteger(TQValueInteger * value, const TString& newName) : TQValue(value, newName) {
  // Copy a TQValueInteger object
 
  if (value)
    fValue = value->getInteger();
  else
    fValue = 0;
}


//__________________________________________________________________________________|___________

TQValueInteger * TQValueInteger::newInstance(const TString& name, int value) {
  // Create a new instance of TQValueDouble

  if (isValidName(name))
    return new TQValueInteger(name, value);
  else
    return 0;
}


//__________________________________________________________________________________|___________

TQValue * TQValueInteger::copy(const TString& newName) {
  // Return a copy of this TQValueInteger object

  if (newName.IsNull() || isValidName(newName))
    return new TQValueInteger(this, newName);
  else
    return 0;
}


//__________________________________________________________________________________|___________

double TQValueInteger::getDouble() const {
  // Return the value wrapped by this object as double

  return (double)fValue;
}


//__________________________________________________________________________________|___________

int TQValueInteger::getInteger() const {
  // Return the value wrapped by this object

  return fValue;
}


//__________________________________________________________________________________|___________

bool TQValueInteger::getBool() const {
  // Return true if the value wrapped by this object is not equal to zero

  return (fValue != 0);
}


//__________________________________________________________________________________|___________

TString TQValueInteger::getString() const {
  // Return a string describing the value wrapped by this object

  return TString::Format("%d", fValue);
}


//__________________________________________________________________________________|___________

bool TQValueInteger::isInteger() const {
  // Return true if the value wrapped by this object is an integer

  return true;
}


//__________________________________________________________________________________|___________

bool TQValueInteger::isValidDouble() const {
  // Return true if the value wrapped by this object can be cast to a double (true
  // in this case)

  return true;
}


//__________________________________________________________________________________|___________

bool TQValueInteger::isValidInteger() const {
  // Return true if the value wrapped by this object can be cast to an integer (true
  // in this case)

  return true;
}


//__________________________________________________________________________________|___________

bool TQValueInteger::isValidBool() const {
  // Return true if the value wrapped by this object can be cast to a bool (true
  // in this case)

  return true;
}


//__________________________________________________________________________________|___________

TString TQValueInteger::getTypeAsString() const {
  // Return a string describing the type of value wrapped by this object ("integer"
  // in this case)

  return "integer";
}


//__________________________________________________________________________________|___________

TString TQValueInteger::getAsString(bool forceQuotes) const {
  // Return a string describing the value including its name

  if (forceQuotes)
    return TString::Format("%s = \"%d\"", GetName(), getInteger());
  else
    return TString::Format("%s = %d", GetName(), getInteger());
}


//__________________________________________________________________________________|___________

TQValueInteger::~TQValueInteger() {
  // Destructor of TQValueInteger class:

}




////////////////////////////////////////////////////////////////////////////////////////////////
//
// TQValueBool:
//
//
////////////////////////////////////////////////////////////////////////////////////////////////

ClassImp(TQValueBool)


//__________________________________________________________________________________|___________

TQValueBool::TQValueBool() : TQValue() {
  // Default constructor of TQValueBool class:

  fValue = false;
}


//__________________________________________________________________________________|___________

TQValueBool::TQValueBool(const TString& name, bool value) : TQValue(name) {
  // Constructor of TQValueBool class:

  fValue = value;
}


//__________________________________________________________________________________|___________

TQValueBool::TQValueBool(TQValueBool * value, const TString& newName) : TQValue(value, newName) {
  // Copy a TQValueBool object
 
  if (value)
    fValue = value->getBool();
  else
    fValue = false;
}


//__________________________________________________________________________________|___________

TQValueBool * TQValueBool::newInstance(const TString& name, bool value) {
  // Create a new instance of TQValueDouble

  if (isValidName(name))
    return new TQValueBool(name, value);
  else
    return 0;
}


//__________________________________________________________________________________|___________

TQValue * TQValueBool::copy(const TString& newName) {
  // Return a copy of this TQValueBool object

  if (newName.IsNull() || isValidName(newName))
    return new TQValueBool(this, newName);
  else
    return 0;
}


//__________________________________________________________________________________|___________

double TQValueBool::getDouble() const {
  // Return the value wrapped by this object as double

  return (fValue ? 1. : 0.);
}


//__________________________________________________________________________________|___________

int TQValueBool::getInteger() const {
  // Return the value wrapped by this object as int

  return (fValue ? 1 : 0);
}


//__________________________________________________________________________________|___________

bool TQValueBool::getBool() const {
  // Return the value wrapped by this object

  return fValue;
}


//__________________________________________________________________________________|___________

TString TQValueBool::getString() const {
  // Return a string describing the value wrapped by this object

  return TQStringUtils::getStringFromBool(fValue);
}


//__________________________________________________________________________________|___________

bool TQValueBool::isBool() const {
  // Return true if the value wrapped by this object is a bool

  return true;
}


//__________________________________________________________________________________|___________

bool TQValueBool::isValidDouble() const {
  // Return true if the value wrapped by this object can be cast to a double (true
  // in this case)

  return true;
}


//__________________________________________________________________________________|___________

bool TQValueBool::isValidInteger() const {
  // Return true if the value wrapped by this object can be cast to an integer (true
  // in this case)

  return true;
}


//__________________________________________________________________________________|___________

bool TQValueBool::isValidBool() const {
  // Return true if the value wrapped by this object can be cast to a bool (true
  // in this case)

  return true;
}


//__________________________________________________________________________________|___________

TString TQValueBool::getTypeAsString() const {
  // Return a string describing the type of value wrapped by this object ("bool"
  // in this case)

  return "bool";
}


//__________________________________________________________________________________|___________

TString TQValueBool::getAsString(bool forceQuotes) const {
  // Return a string describing the value including its name

  if (forceQuotes)
    return TString::Format("%s = \"%s\"", GetName(), getString().Data());
  else
    return TString::Format("%s = %s", GetName(), getString().Data());
}


//__________________________________________________________________________________|___________

TQValueBool::~TQValueBool() {
  // Destructor of TQValueBool class:

}




////////////////////////////////////////////////////////////////////////////////////////////////
//
// TQValueString:
//
//
////////////////////////////////////////////////////////////////////////////////////////////////

ClassImp(TQValueString)


//__________________________________________________________________________________|___________

TQValueString::TQValueString() : TQValue() {
  // Default constructor of TQValueString class:

  fValue = "";
}


//__________________________________________________________________________________|___________

TQValueString::TQValueString(const TString& name, const TString& value) : TQValue(name) {
  // Constructor of TQValueString class:

  fValue = value;
}


//__________________________________________________________________________________|___________

TQValueString::TQValueString(TQValueString * value, const TString& newName) : TQValue(value, newName) {
  // Copy a TQValueString object
 
  if (value)
    fValue = value->getString();
  else
    fValue = "";
}


//__________________________________________________________________________________|___________

TQValueString * TQValueString::newInstance(const TString& name, const TString& value) {
  // Create a new instance of TQValueDouble

  if (isValidName(name))
    return new TQValueString(name, value);
  else
    return 0;
}


//__________________________________________________________________________________|___________

TQValue * TQValueString::copy(const TString& newName) {
  // Return a copy of this TQValueString object

  if (newName.IsNull() || isValidName(newName))
    return new TQValueString(this, newName);
  else
    return 0;
}


//__________________________________________________________________________________|___________

double TQValueString::getDouble() const {
  // Return the value wrapped by this object as double

  return fValue.Atof();
}


//__________________________________________________________________________________|___________

int TQValueString::getInteger() const {
  // Return the value wrapped by this object as int
  if(fValue.Index("k") < fValue.Length() || (fValue.Index("#") == 0)){
    int color = TQStringUtils::getColorFromString(fValue);
    if(color >= 0) return color;
    return fValue.Atoi();
  }
  return fValue.Atoi();
}

//__________________________________________________________________________________|___________

bool TQValueString::getBool() const {
  // Return true if the string wrapped by this object is either "yes", "true",
  // "ok" or a number not equal to zero
 
  return TQStringUtils::getBoolFromString(fValue);
}


//__________________________________________________________________________________|___________

TString TQValueString::getString() const {
  // Return the value wrapped by this object

  return fValue;
}


//__________________________________________________________________________________|___________

bool TQValueString::isString() const {
  // Return true if the value wrapped by this object is a string

  return true;
}


//__________________________________________________________________________________|___________

bool TQValueString::isValidDouble() const {
  // Return true if the value wrapped by this object can be cast to a double

  return fValue.IsFloat();
}


//__________________________________________________________________________________|___________

bool TQValueString::isValidInteger() const {
  // Return true if the value wrapped by this object can be cast to an integer
  
  return (fValue.IsFloat() || ( TQStringUtils::getColorFromString(fValue) >= 0));
}


//__________________________________________________________________________________|___________

bool TQValueString::isValidBool() const {
  // Return true if the value wrapped by this object can be cast to a bool

  bool isBool = false;
  TQStringUtils::getBoolFromString(fValue, isBool);
  return isBool;
}


//__________________________________________________________________________________|___________

TString TQValueString::getAsString(bool forceQuotes) const {
  // Return a string describing the value including its name
  return TString(GetName()) + " = " + (forceQuotes ? "\"" : "") + getValueAsString() + (forceQuotes ? "\"" : "");
}


//__________________________________________________________________________________|___________

TString TQValueString::getTypeAsString() const {
  // Return a string describing the type of value wrapped by this object ("string"
  // in this case)

  return "string";
}


//__________________________________________________________________________________|___________

TString TQValueString::getValueAsString() const {
 
  // TString value = TQStringUtils::insertEscapes(getString(), "\\\"");
  TString value = getString();
 
  /* put string into quotation marks */
  value.Prepend("\"");
  value.Append("\"");

  return value;
}


//__________________________________________________________________________________|___________

TQValueString::~TQValueString() {
  // Destructor of TQValueString class:

}

//__________________________________________________________________________________|___________

int TQValueString ::getSize() const { return sizeof(*this); }
int TQValueBool   ::getSize() const { return sizeof(*this); }
int TQValueDouble ::getSize() const { return sizeof(*this); }
int TQValueInteger::getSize() const { return sizeof(*this); }

 TQValue.cxx:1
 TQValue.cxx:2
 TQValue.cxx:3
 TQValue.cxx:4
 TQValue.cxx:5
 TQValue.cxx:6
 TQValue.cxx:7
 TQValue.cxx:8
 TQValue.cxx:9
 TQValue.cxx:10
 TQValue.cxx:11
 TQValue.cxx:12
 TQValue.cxx:13
 TQValue.cxx:14
 TQValue.cxx:15
 TQValue.cxx:16
 TQValue.cxx:17
 TQValue.cxx:18
 TQValue.cxx:19
 TQValue.cxx:20
 TQValue.cxx:21
 TQValue.cxx:22
 TQValue.cxx:23
 TQValue.cxx:24
 TQValue.cxx:25
 TQValue.cxx:26
 TQValue.cxx:27
 TQValue.cxx:28
 TQValue.cxx:29
 TQValue.cxx:30
 TQValue.cxx:31
 TQValue.cxx:32
 TQValue.cxx:33
 TQValue.cxx:34
 TQValue.cxx:35
 TQValue.cxx:36
 TQValue.cxx:37
 TQValue.cxx:38
 TQValue.cxx:39
 TQValue.cxx:40
 TQValue.cxx:41
 TQValue.cxx:42
 TQValue.cxx:43
 TQValue.cxx:44
 TQValue.cxx:45
 TQValue.cxx:46
 TQValue.cxx:47
 TQValue.cxx:48
 TQValue.cxx:49
 TQValue.cxx:50
 TQValue.cxx:51
 TQValue.cxx:52
 TQValue.cxx:53
 TQValue.cxx:54
 TQValue.cxx:55
 TQValue.cxx:56
 TQValue.cxx:57
 TQValue.cxx:58
 TQValue.cxx:59
 TQValue.cxx:60
 TQValue.cxx:61
 TQValue.cxx:62
 TQValue.cxx:63
 TQValue.cxx:64
 TQValue.cxx:65
 TQValue.cxx:66
 TQValue.cxx:67
 TQValue.cxx:68
 TQValue.cxx:69
 TQValue.cxx:70
 TQValue.cxx:71
 TQValue.cxx:72
 TQValue.cxx:73
 TQValue.cxx:74
 TQValue.cxx:75
 TQValue.cxx:76
 TQValue.cxx:77
 TQValue.cxx:78
 TQValue.cxx:79
 TQValue.cxx:80
 TQValue.cxx:81
 TQValue.cxx:82
 TQValue.cxx:83
 TQValue.cxx:84
 TQValue.cxx:85
 TQValue.cxx:86
 TQValue.cxx:87
 TQValue.cxx:88
 TQValue.cxx:89
 TQValue.cxx:90
 TQValue.cxx:91
 TQValue.cxx:92
 TQValue.cxx:93
 TQValue.cxx:94
 TQValue.cxx:95
 TQValue.cxx:96
 TQValue.cxx:97
 TQValue.cxx:98
 TQValue.cxx:99
 TQValue.cxx:100
 TQValue.cxx:101
 TQValue.cxx:102
 TQValue.cxx:103
 TQValue.cxx:104
 TQValue.cxx:105
 TQValue.cxx:106
 TQValue.cxx:107
 TQValue.cxx:108
 TQValue.cxx:109
 TQValue.cxx:110
 TQValue.cxx:111
 TQValue.cxx:112
 TQValue.cxx:113
 TQValue.cxx:114
 TQValue.cxx:115
 TQValue.cxx:116
 TQValue.cxx:117
 TQValue.cxx:118
 TQValue.cxx:119
 TQValue.cxx:120
 TQValue.cxx:121
 TQValue.cxx:122
 TQValue.cxx:123
 TQValue.cxx:124
 TQValue.cxx:125
 TQValue.cxx:126
 TQValue.cxx:127
 TQValue.cxx:128
 TQValue.cxx:129
 TQValue.cxx:130
 TQValue.cxx:131
 TQValue.cxx:132
 TQValue.cxx:133
 TQValue.cxx:134
 TQValue.cxx:135
 TQValue.cxx:136
 TQValue.cxx:137
 TQValue.cxx:138
 TQValue.cxx:139
 TQValue.cxx:140
 TQValue.cxx:141
 TQValue.cxx:142
 TQValue.cxx:143
 TQValue.cxx:144
 TQValue.cxx:145
 TQValue.cxx:146
 TQValue.cxx:147
 TQValue.cxx:148
 TQValue.cxx:149
 TQValue.cxx:150
 TQValue.cxx:151
 TQValue.cxx:152
 TQValue.cxx:153
 TQValue.cxx:154
 TQValue.cxx:155
 TQValue.cxx:156
 TQValue.cxx:157
 TQValue.cxx:158
 TQValue.cxx:159
 TQValue.cxx:160
 TQValue.cxx:161
 TQValue.cxx:162
 TQValue.cxx:163
 TQValue.cxx:164
 TQValue.cxx:165
 TQValue.cxx:166
 TQValue.cxx:167
 TQValue.cxx:168
 TQValue.cxx:169
 TQValue.cxx:170
 TQValue.cxx:171
 TQValue.cxx:172
 TQValue.cxx:173
 TQValue.cxx:174
 TQValue.cxx:175
 TQValue.cxx:176
 TQValue.cxx:177
 TQValue.cxx:178
 TQValue.cxx:179
 TQValue.cxx:180
 TQValue.cxx:181
 TQValue.cxx:182
 TQValue.cxx:183
 TQValue.cxx:184
 TQValue.cxx:185
 TQValue.cxx:186
 TQValue.cxx:187
 TQValue.cxx:188
 TQValue.cxx:189
 TQValue.cxx:190
 TQValue.cxx:191
 TQValue.cxx:192
 TQValue.cxx:193
 TQValue.cxx:194
 TQValue.cxx:195
 TQValue.cxx:196
 TQValue.cxx:197
 TQValue.cxx:198
 TQValue.cxx:199
 TQValue.cxx:200
 TQValue.cxx:201
 TQValue.cxx:202
 TQValue.cxx:203
 TQValue.cxx:204
 TQValue.cxx:205
 TQValue.cxx:206
 TQValue.cxx:207
 TQValue.cxx:208
 TQValue.cxx:209
 TQValue.cxx:210
 TQValue.cxx:211
 TQValue.cxx:212
 TQValue.cxx:213
 TQValue.cxx:214
 TQValue.cxx:215
 TQValue.cxx:216
 TQValue.cxx:217
 TQValue.cxx:218
 TQValue.cxx:219
 TQValue.cxx:220
 TQValue.cxx:221
 TQValue.cxx:222
 TQValue.cxx:223
 TQValue.cxx:224
 TQValue.cxx:225
 TQValue.cxx:226
 TQValue.cxx:227
 TQValue.cxx:228
 TQValue.cxx:229
 TQValue.cxx:230
 TQValue.cxx:231
 TQValue.cxx:232
 TQValue.cxx:233
 TQValue.cxx:234
 TQValue.cxx:235
 TQValue.cxx:236
 TQValue.cxx:237
 TQValue.cxx:238
 TQValue.cxx:239
 TQValue.cxx:240
 TQValue.cxx:241
 TQValue.cxx:242
 TQValue.cxx:243
 TQValue.cxx:244
 TQValue.cxx:245
 TQValue.cxx:246
 TQValue.cxx:247
 TQValue.cxx:248
 TQValue.cxx:249
 TQValue.cxx:250
 TQValue.cxx:251
 TQValue.cxx:252
 TQValue.cxx:253
 TQValue.cxx:254
 TQValue.cxx:255
 TQValue.cxx:256
 TQValue.cxx:257
 TQValue.cxx:258
 TQValue.cxx:259
 TQValue.cxx:260
 TQValue.cxx:261
 TQValue.cxx:262
 TQValue.cxx:263
 TQValue.cxx:264
 TQValue.cxx:265
 TQValue.cxx:266
 TQValue.cxx:267
 TQValue.cxx:268
 TQValue.cxx:269
 TQValue.cxx:270
 TQValue.cxx:271
 TQValue.cxx:272
 TQValue.cxx:273
 TQValue.cxx:274
 TQValue.cxx:275
 TQValue.cxx:276
 TQValue.cxx:277
 TQValue.cxx:278
 TQValue.cxx:279
 TQValue.cxx:280
 TQValue.cxx:281
 TQValue.cxx:282
 TQValue.cxx:283
 TQValue.cxx:284
 TQValue.cxx:285
 TQValue.cxx:286
 TQValue.cxx:287
 TQValue.cxx:288
 TQValue.cxx:289
 TQValue.cxx:290
 TQValue.cxx:291
 TQValue.cxx:292
 TQValue.cxx:293
 TQValue.cxx:294
 TQValue.cxx:295
 TQValue.cxx:296
 TQValue.cxx:297
 TQValue.cxx:298
 TQValue.cxx:299
 TQValue.cxx:300
 TQValue.cxx:301
 TQValue.cxx:302
 TQValue.cxx:303
 TQValue.cxx:304
 TQValue.cxx:305
 TQValue.cxx:306
 TQValue.cxx:307
 TQValue.cxx:308
 TQValue.cxx:309
 TQValue.cxx:310
 TQValue.cxx:311
 TQValue.cxx:312
 TQValue.cxx:313
 TQValue.cxx:314
 TQValue.cxx:315
 TQValue.cxx:316
 TQValue.cxx:317
 TQValue.cxx:318
 TQValue.cxx:319
 TQValue.cxx:320
 TQValue.cxx:321
 TQValue.cxx:322
 TQValue.cxx:323
 TQValue.cxx:324
 TQValue.cxx:325
 TQValue.cxx:326
 TQValue.cxx:327
 TQValue.cxx:328
 TQValue.cxx:329
 TQValue.cxx:330
 TQValue.cxx:331
 TQValue.cxx:332
 TQValue.cxx:333
 TQValue.cxx:334
 TQValue.cxx:335
 TQValue.cxx:336
 TQValue.cxx:337
 TQValue.cxx:338
 TQValue.cxx:339
 TQValue.cxx:340
 TQValue.cxx:341
 TQValue.cxx:342
 TQValue.cxx:343
 TQValue.cxx:344
 TQValue.cxx:345
 TQValue.cxx:346
 TQValue.cxx:347
 TQValue.cxx:348
 TQValue.cxx:349
 TQValue.cxx:350
 TQValue.cxx:351
 TQValue.cxx:352
 TQValue.cxx:353
 TQValue.cxx:354
 TQValue.cxx:355
 TQValue.cxx:356
 TQValue.cxx:357
 TQValue.cxx:358
 TQValue.cxx:359
 TQValue.cxx:360
 TQValue.cxx:361
 TQValue.cxx:362
 TQValue.cxx:363
 TQValue.cxx:364
 TQValue.cxx:365
 TQValue.cxx:366
 TQValue.cxx:367
 TQValue.cxx:368
 TQValue.cxx:369
 TQValue.cxx:370
 TQValue.cxx:371
 TQValue.cxx:372
 TQValue.cxx:373
 TQValue.cxx:374
 TQValue.cxx:375
 TQValue.cxx:376
 TQValue.cxx:377
 TQValue.cxx:378
 TQValue.cxx:379
 TQValue.cxx:380
 TQValue.cxx:381
 TQValue.cxx:382
 TQValue.cxx:383
 TQValue.cxx:384
 TQValue.cxx:385
 TQValue.cxx:386
 TQValue.cxx:387
 TQValue.cxx:388
 TQValue.cxx:389
 TQValue.cxx:390
 TQValue.cxx:391
 TQValue.cxx:392
 TQValue.cxx:393
 TQValue.cxx:394
 TQValue.cxx:395
 TQValue.cxx:396
 TQValue.cxx:397
 TQValue.cxx:398
 TQValue.cxx:399
 TQValue.cxx:400
 TQValue.cxx:401
 TQValue.cxx:402
 TQValue.cxx:403
 TQValue.cxx:404
 TQValue.cxx:405
 TQValue.cxx:406
 TQValue.cxx:407
 TQValue.cxx:408
 TQValue.cxx:409
 TQValue.cxx:410
 TQValue.cxx:411
 TQValue.cxx:412
 TQValue.cxx:413
 TQValue.cxx:414
 TQValue.cxx:415
 TQValue.cxx:416
 TQValue.cxx:417
 TQValue.cxx:418
 TQValue.cxx:419
 TQValue.cxx:420
 TQValue.cxx:421
 TQValue.cxx:422
 TQValue.cxx:423
 TQValue.cxx:424
 TQValue.cxx:425
 TQValue.cxx:426
 TQValue.cxx:427
 TQValue.cxx:428
 TQValue.cxx:429
 TQValue.cxx:430
 TQValue.cxx:431
 TQValue.cxx:432
 TQValue.cxx:433
 TQValue.cxx:434
 TQValue.cxx:435
 TQValue.cxx:436
 TQValue.cxx:437
 TQValue.cxx:438
 TQValue.cxx:439
 TQValue.cxx:440
 TQValue.cxx:441
 TQValue.cxx:442
 TQValue.cxx:443
 TQValue.cxx:444
 TQValue.cxx:445
 TQValue.cxx:446
 TQValue.cxx:447
 TQValue.cxx:448
 TQValue.cxx:449
 TQValue.cxx:450
 TQValue.cxx:451
 TQValue.cxx:452
 TQValue.cxx:453
 TQValue.cxx:454
 TQValue.cxx:455
 TQValue.cxx:456
 TQValue.cxx:457
 TQValue.cxx:458
 TQValue.cxx:459
 TQValue.cxx:460
 TQValue.cxx:461
 TQValue.cxx:462
 TQValue.cxx:463
 TQValue.cxx:464
 TQValue.cxx:465
 TQValue.cxx:466
 TQValue.cxx:467
 TQValue.cxx:468
 TQValue.cxx:469
 TQValue.cxx:470
 TQValue.cxx:471
 TQValue.cxx:472
 TQValue.cxx:473
 TQValue.cxx:474
 TQValue.cxx:475
 TQValue.cxx:476
 TQValue.cxx:477
 TQValue.cxx:478
 TQValue.cxx:479
 TQValue.cxx:480
 TQValue.cxx:481
 TQValue.cxx:482
 TQValue.cxx:483
 TQValue.cxx:484
 TQValue.cxx:485
 TQValue.cxx:486
 TQValue.cxx:487
 TQValue.cxx:488
 TQValue.cxx:489
 TQValue.cxx:490
 TQValue.cxx:491
 TQValue.cxx:492
 TQValue.cxx:493
 TQValue.cxx:494
 TQValue.cxx:495
 TQValue.cxx:496
 TQValue.cxx:497
 TQValue.cxx:498
 TQValue.cxx:499
 TQValue.cxx:500
 TQValue.cxx:501
 TQValue.cxx:502
 TQValue.cxx:503
 TQValue.cxx:504
 TQValue.cxx:505
 TQValue.cxx:506
 TQValue.cxx:507
 TQValue.cxx:508
 TQValue.cxx:509
 TQValue.cxx:510
 TQValue.cxx:511
 TQValue.cxx:512
 TQValue.cxx:513
 TQValue.cxx:514
 TQValue.cxx:515
 TQValue.cxx:516
 TQValue.cxx:517
 TQValue.cxx:518
 TQValue.cxx:519
 TQValue.cxx:520
 TQValue.cxx:521
 TQValue.cxx:522
 TQValue.cxx:523
 TQValue.cxx:524
 TQValue.cxx:525
 TQValue.cxx:526
 TQValue.cxx:527
 TQValue.cxx:528
 TQValue.cxx:529
 TQValue.cxx:530
 TQValue.cxx:531
 TQValue.cxx:532
 TQValue.cxx:533
 TQValue.cxx:534
 TQValue.cxx:535
 TQValue.cxx:536
 TQValue.cxx:537
 TQValue.cxx:538
 TQValue.cxx:539
 TQValue.cxx:540
 TQValue.cxx:541
 TQValue.cxx:542
 TQValue.cxx:543
 TQValue.cxx:544
 TQValue.cxx:545
 TQValue.cxx:546
 TQValue.cxx:547
 TQValue.cxx:548
 TQValue.cxx:549
 TQValue.cxx:550
 TQValue.cxx:551
 TQValue.cxx:552
 TQValue.cxx:553
 TQValue.cxx:554
 TQValue.cxx:555
 TQValue.cxx:556
 TQValue.cxx:557
 TQValue.cxx:558
 TQValue.cxx:559
 TQValue.cxx:560
 TQValue.cxx:561
 TQValue.cxx:562
 TQValue.cxx:563
 TQValue.cxx:564
 TQValue.cxx:565
 TQValue.cxx:566
 TQValue.cxx:567
 TQValue.cxx:568
 TQValue.cxx:569
 TQValue.cxx:570
 TQValue.cxx:571
 TQValue.cxx:572
 TQValue.cxx:573
 TQValue.cxx:574
 TQValue.cxx:575
 TQValue.cxx:576
 TQValue.cxx:577
 TQValue.cxx:578
 TQValue.cxx:579
 TQValue.cxx:580
 TQValue.cxx:581
 TQValue.cxx:582
 TQValue.cxx:583
 TQValue.cxx:584
 TQValue.cxx:585
 TQValue.cxx:586
 TQValue.cxx:587
 TQValue.cxx:588
 TQValue.cxx:589
 TQValue.cxx:590
 TQValue.cxx:591
 TQValue.cxx:592
 TQValue.cxx:593
 TQValue.cxx:594
 TQValue.cxx:595
 TQValue.cxx:596
 TQValue.cxx:597
 TQValue.cxx:598
 TQValue.cxx:599
 TQValue.cxx:600
 TQValue.cxx:601
 TQValue.cxx:602
 TQValue.cxx:603
 TQValue.cxx:604
 TQValue.cxx:605
 TQValue.cxx:606
 TQValue.cxx:607
 TQValue.cxx:608
 TQValue.cxx:609
 TQValue.cxx:610
 TQValue.cxx:611
 TQValue.cxx:612
 TQValue.cxx:613
 TQValue.cxx:614
 TQValue.cxx:615
 TQValue.cxx:616
 TQValue.cxx:617
 TQValue.cxx:618
 TQValue.cxx:619
 TQValue.cxx:620
 TQValue.cxx:621
 TQValue.cxx:622
 TQValue.cxx:623
 TQValue.cxx:624
 TQValue.cxx:625
 TQValue.cxx:626
 TQValue.cxx:627
 TQValue.cxx:628
 TQValue.cxx:629
 TQValue.cxx:630
 TQValue.cxx:631
 TQValue.cxx:632
 TQValue.cxx:633
 TQValue.cxx:634
 TQValue.cxx:635
 TQValue.cxx:636
 TQValue.cxx:637
 TQValue.cxx:638
 TQValue.cxx:639
 TQValue.cxx:640
 TQValue.cxx:641
 TQValue.cxx:642
 TQValue.cxx:643
 TQValue.cxx:644
 TQValue.cxx:645
 TQValue.cxx:646
 TQValue.cxx:647
 TQValue.cxx:648
 TQValue.cxx:649
 TQValue.cxx:650
 TQValue.cxx:651
 TQValue.cxx:652
 TQValue.cxx:653
 TQValue.cxx:654
 TQValue.cxx:655
 TQValue.cxx:656
 TQValue.cxx:657
 TQValue.cxx:658
 TQValue.cxx:659
 TQValue.cxx:660
 TQValue.cxx:661
 TQValue.cxx:662
 TQValue.cxx:663
 TQValue.cxx:664
 TQValue.cxx:665
 TQValue.cxx:666
 TQValue.cxx:667
 TQValue.cxx:668
 TQValue.cxx:669
 TQValue.cxx:670
 TQValue.cxx:671
 TQValue.cxx:672
 TQValue.cxx:673
 TQValue.cxx:674
 TQValue.cxx:675
 TQValue.cxx:676
 TQValue.cxx:677
 TQValue.cxx:678
 TQValue.cxx:679
 TQValue.cxx:680
 TQValue.cxx:681
 TQValue.cxx:682
 TQValue.cxx:683
 TQValue.cxx:684
 TQValue.cxx:685
 TQValue.cxx:686
 TQValue.cxx:687
 TQValue.cxx:688
 TQValue.cxx:689
 TQValue.cxx:690
 TQValue.cxx:691
 TQValue.cxx:692
 TQValue.cxx:693
 TQValue.cxx:694
 TQValue.cxx:695
 TQValue.cxx:696
 TQValue.cxx:697
 TQValue.cxx:698
 TQValue.cxx:699
 TQValue.cxx:700
 TQValue.cxx:701
 TQValue.cxx:702
 TQValue.cxx:703
 TQValue.cxx:704
 TQValue.cxx:705
 TQValue.cxx:706
 TQValue.cxx:707
 TQValue.cxx:708
 TQValue.cxx:709
 TQValue.cxx:710
 TQValue.cxx:711
 TQValue.cxx:712
 TQValue.cxx:713
 TQValue.cxx:714
 TQValue.cxx:715
 TQValue.cxx:716
 TQValue.cxx:717
 TQValue.cxx:718
 TQValue.cxx:719
 TQValue.cxx:720
 TQValue.cxx:721
 TQValue.cxx:722
 TQValue.cxx:723
 TQValue.cxx:724
 TQValue.cxx:725
 TQValue.cxx:726
 TQValue.cxx:727
 TQValue.cxx:728
 TQValue.cxx:729
 TQValue.cxx:730
 TQValue.cxx:731
 TQValue.cxx:732
 TQValue.cxx:733
 TQValue.cxx:734
 TQValue.cxx:735
 TQValue.cxx:736
 TQValue.cxx:737
 TQValue.cxx:738
 TQValue.cxx:739
 TQValue.cxx:740
 TQValue.cxx:741
 TQValue.cxx:742
 TQValue.cxx:743
 TQValue.cxx:744
 TQValue.cxx:745
 TQValue.cxx:746
 TQValue.cxx:747
 TQValue.cxx:748
 TQValue.cxx:749
 TQValue.cxx:750
 TQValue.cxx:751
 TQValue.cxx:752
 TQValue.cxx:753
 TQValue.cxx:754
 TQValue.cxx:755
 TQValue.cxx:756
 TQValue.cxx:757
 TQValue.cxx:758
 TQValue.cxx:759
 TQValue.cxx:760
 TQValue.cxx:761
 TQValue.cxx:762
 TQValue.cxx:763
 TQValue.cxx:764
 TQValue.cxx:765
 TQValue.cxx:766
 TQValue.cxx:767
 TQValue.cxx:768
 TQValue.cxx:769
 TQValue.cxx:770
 TQValue.cxx:771
 TQValue.cxx:772
 TQValue.cxx:773
 TQValue.cxx:774
 TQValue.cxx:775
 TQValue.cxx:776
 TQValue.cxx:777
 TQValue.cxx:778
 TQValue.cxx:779
 TQValue.cxx:780
 TQValue.cxx:781
 TQValue.cxx:782
 TQValue.cxx:783
 TQValue.cxx:784
 TQValue.cxx:785
 TQValue.cxx:786
 TQValue.cxx:787
 TQValue.cxx:788
 TQValue.cxx:789
 TQValue.cxx:790
 TQValue.cxx:791
 TQValue.cxx:792
 TQValue.cxx:793
 TQValue.cxx:794
 TQValue.cxx:795
 TQValue.cxx:796
 TQValue.cxx:797
 TQValue.cxx:798
 TQValue.cxx:799
 TQValue.cxx:800
 TQValue.cxx:801
 TQValue.cxx:802
 TQValue.cxx:803
 TQValue.cxx:804
 TQValue.cxx:805
 TQValue.cxx:806
 TQValue.cxx:807
 TQValue.cxx:808
 TQValue.cxx:809
 TQValue.cxx:810
 TQValue.cxx:811
 TQValue.cxx:812
 TQValue.cxx:813
 TQValue.cxx:814
 TQValue.cxx:815
 TQValue.cxx:816
 TQValue.cxx:817
 TQValue.cxx:818
 TQValue.cxx:819
 TQValue.cxx:820
 TQValue.cxx:821
 TQValue.cxx:822
 TQValue.cxx:823
 TQValue.cxx:824
 TQValue.cxx:825
 TQValue.cxx:826
 TQValue.cxx:827
 TQValue.cxx:828
 TQValue.cxx:829
 TQValue.cxx:830
 TQValue.cxx:831
 TQValue.cxx:832
 TQValue.cxx:833
 TQValue.cxx:834
 TQValue.cxx:835
 TQValue.cxx:836
 TQValue.cxx:837
 TQValue.cxx:838
 TQValue.cxx:839
 TQValue.cxx:840
 TQValue.cxx:841
 TQValue.cxx:842
 TQValue.cxx:843
 TQValue.cxx:844
 TQValue.cxx:845
 TQValue.cxx:846
 TQValue.cxx:847
 TQValue.cxx:848
 TQValue.cxx:849
 TQValue.cxx:850
 TQValue.cxx:851
 TQValue.cxx:852
 TQValue.cxx:853
 TQValue.cxx:854
 TQValue.cxx:855
 TQValue.cxx:856
 TQValue.cxx:857
 TQValue.cxx:858
 TQValue.cxx:859
 TQValue.cxx:860
 TQValue.cxx:861
 TQValue.cxx:862
 TQValue.cxx:863
 TQValue.cxx:864
 TQValue.cxx:865
 TQValue.cxx:866
 TQValue.cxx:867
 TQValue.cxx:868
 TQValue.cxx:869
 TQValue.cxx:870
 TQValue.cxx:871
 TQValue.cxx:872
 TQValue.cxx:873
 TQValue.cxx:874
 TQValue.cxx:875
 TQValue.cxx:876
 TQValue.cxx:877
 TQValue.cxx:878
 TQValue.cxx:879
 TQValue.cxx:880
 TQValue.cxx:881
 TQValue.cxx:882
 TQValue.cxx:883
 TQValue.cxx:884
 TQValue.cxx:885
 TQValue.cxx:886
 TQValue.cxx:887
 TQValue.cxx:888
 TQValue.cxx:889
 TQValue.cxx:890
 TQValue.cxx:891
 TQValue.cxx:892
 TQValue.cxx:893
 TQValue.cxx:894
 TQValue.cxx:895
 TQValue.cxx:896
 TQValue.cxx:897
 TQValue.cxx:898
 TQValue.cxx:899
 TQValue.cxx:900
 TQValue.cxx:901
 TQValue.cxx:902
 TQValue.cxx:903
 TQValue.cxx:904
 TQValue.cxx:905
 TQValue.cxx:906
 TQValue.cxx:907
 TQValue.cxx:908
 TQValue.cxx:909
 TQValue.cxx:910
 TQValue.cxx:911
 TQValue.cxx:912
 TQValue.cxx:913
 TQValue.cxx:914
 TQValue.cxx:915
 TQValue.cxx:916
 TQValue.cxx:917
 TQValue.cxx:918
 TQValue.cxx:919
 TQValue.cxx:920
 TQValue.cxx:921
 TQValue.cxx:922
 TQValue.cxx:923
 TQValue.cxx:924
 TQValue.cxx:925
 TQValue.cxx:926
 TQValue.cxx:927
 TQValue.cxx:928
 TQValue.cxx:929
 TQValue.cxx:930
 TQValue.cxx:931
 TQValue.cxx:932
 TQValue.cxx:933
 TQValue.cxx:934
 TQValue.cxx:935
 TQValue.cxx:936
 TQValue.cxx:937
 TQValue.cxx:938
 TQValue.cxx:939
 TQValue.cxx:940
 TQValue.cxx:941
 TQValue.cxx:942
 TQValue.cxx:943
 TQValue.cxx:944
 TQValue.cxx:945
 TQValue.cxx:946
 TQValue.cxx:947
 TQValue.cxx:948
 TQValue.cxx:949
 TQValue.cxx:950
 TQValue.cxx:951
 TQValue.cxx:952
 TQValue.cxx:953
 TQValue.cxx:954
 TQValue.cxx:955
 TQValue.cxx:956
 TQValue.cxx:957
 TQValue.cxx:958
 TQValue.cxx:959
 TQValue.cxx:960
 TQValue.cxx:961
 TQValue.cxx:962
 TQValue.cxx:963
 TQValue.cxx:964
 TQValue.cxx:965
 TQValue.cxx:966
 TQValue.cxx:967
 TQValue.cxx:968
 TQValue.cxx:969
 TQValue.cxx:970
 TQValue.cxx:971
 TQValue.cxx:972
 TQValue.cxx:973
 TQValue.cxx:974
 TQValue.cxx:975
 TQValue.cxx:976
 TQValue.cxx:977
 TQValue.cxx:978
 TQValue.cxx:979
 TQValue.cxx:980
 TQValue.cxx:981
 TQValue.cxx:982
 TQValue.cxx:983
 TQValue.cxx:984
 TQValue.cxx:985
 TQValue.cxx:986
 TQValue.cxx:987
 TQValue.cxx:988
 TQValue.cxx:989
 TQValue.cxx:990
 TQValue.cxx:991
 TQValue.cxx:992
 TQValue.cxx:993
 TQValue.cxx:994
 TQValue.cxx:995
 TQValue.cxx:996
 TQValue.cxx:997
 TQValue.cxx:998
 TQValue.cxx:999
 TQValue.cxx:1000
 TQValue.cxx:1001
 TQValue.cxx:1002
 TQValue.cxx:1003
 TQValue.cxx:1004
 TQValue.cxx:1005
 TQValue.cxx:1006
 TQValue.cxx:1007
 TQValue.cxx:1008
 TQValue.cxx:1009
 TQValue.cxx:1010
 TQValue.cxx:1011
 TQValue.cxx:1012
 TQValue.cxx:1013
 TQValue.cxx:1014
 TQValue.cxx:1015
 TQValue.cxx:1016
 TQValue.cxx:1017
 TQValue.cxx:1018
 TQValue.cxx:1019
 TQValue.cxx:1020
 TQValue.cxx:1021
 TQValue.cxx:1022
 TQValue.cxx:1023
 TQValue.cxx:1024
 TQValue.cxx:1025
 TQValue.cxx:1026
 TQValue.cxx:1027
 TQValue.cxx:1028
 TQValue.cxx:1029
 TQValue.cxx:1030
 TQValue.cxx:1031
 TQValue.cxx:1032
 TQValue.cxx:1033
 TQValue.cxx:1034
 TQValue.cxx:1035
 TQValue.cxx:1036
 TQValue.cxx:1037
 TQValue.cxx:1038
 TQValue.cxx:1039
 TQValue.cxx:1040
 TQValue.cxx:1041
 TQValue.cxx:1042
 TQValue.cxx:1043
 TQValue.cxx:1044
 TQValue.cxx:1045
 TQValue.cxx:1046
 TQValue.cxx:1047
 TQValue.cxx:1048
 TQValue.cxx:1049
 TQValue.cxx:1050
 TQValue.cxx:1051
 TQValue.cxx:1052
 TQValue.cxx:1053