diff --git a/.gitignore b/.gitignore index 6d0cf62..2368036 100644 --- a/.gitignore +++ b/.gitignore @@ -1,3 +1,6 @@ +# Doxygen folder +docs/html + # Binaries bin diff --git a/docs/Doxyfile b/docs/Doxyfile index 22254e8..4a7e1b3 100644 --- a/docs/Doxyfile +++ b/docs/Doxyfile @@ -983,7 +983,7 @@ FILTER_SOURCE_PATTERNS = # (index.html). This can be useful if you have a project on for instance GitHub # and want to reuse the introduction page also for the doxygen output. -USE_MDFILE_AS_MAINPAGE = +USE_MDFILE_AS_MAINPAGE = #--------------------------------------------------------------------------- # Configuration options related to source browsing diff --git a/docs/html/_big_int_8hpp.html b/docs/html/_big_int_8hpp.html deleted file mode 100644 index 55c2869..0000000 --- a/docs/html/_big_int_8hpp.html +++ /dev/null @@ -1,103 +0,0 @@ - - - - - - - -/Users/Mohsin/Repos/BigInt/include/BigInt.hpp File Reference - - - - - - - - - - -
-
- - - - - - - -
-
Big Integer library for C++
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-Classes
-
-
BigInt.hpp File Reference
-
-
- -

Contains class declaration for BigInt. -More...

-
#include <iostream>
-
-

Go to the source code of this file.

- - - - - -

-Classes

class  BigInt
 Class that contains an arbitrarily sized integer. More...
 
-

Detailed Description

-

Contains class declaration for BigInt.

-
- - - - diff --git a/docs/html/_big_int_8hpp_source.html b/docs/html/_big_int_8hpp_source.html deleted file mode 100644 index 63fafbf..0000000 --- a/docs/html/_big_int_8hpp_source.html +++ /dev/null @@ -1,114 +0,0 @@ - - - - - - - -/Users/Mohsin/Repos/BigInt/include/BigInt.hpp Source File - - - - - - - - - - -
-
- - - - - - - -
-
Big Integer library for C++
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
BigInt.hpp
-
-
-Go to the documentation of this file.
1 
7 #ifndef BIG_INT_HPP
8 #define BIG_INT_HPP
9 
10 #include <iostream>
11 
15 class BigInt {
16 
17  std::string value;
18  char sign;
19 
20  public:
21 
22  // Constructors
23  BigInt();
24  BigInt(const BigInt&);
25  BigInt(const long long&);
26  BigInt(const std::string&);
27 
28  // Assignment operators:
29  BigInt& operator=(const BigInt&);
30  BigInt& operator=(const long long&);
31  BigInt& operator=(const std::string&);
32 
33  // Unary arithmetic operators:
34  BigInt operator+() const; // unary +
35  BigInt operator-() const; // unary -
36 
37  // Binary arithmetic operators:
38  BigInt operator+(const BigInt&) const;
39  BigInt operator-(const BigInt&) const;
40  BigInt operator*(const BigInt&) const;
41  BigInt operator/(const BigInt&) const;
42  BigInt operator%(const BigInt&) const;
43  BigInt operator+(const long long&) const;
44  BigInt operator-(const long long&) const;
45  BigInt operator*(const long long&) const;
46  BigInt operator/(const long long&) const;
47  BigInt operator%(const long long&) const;
48  BigInt operator+(const std::string&) const;
49  BigInt operator-(const std::string&) const;
50  BigInt operator*(const std::string&) const;
51  BigInt operator/(const std::string&) const;
52  BigInt operator%(const std::string&) const;
53 
54  // Arithmetic-assignment operators:
55  BigInt& operator+=(const BigInt&);
56  BigInt& operator-=(const BigInt&);
57  BigInt& operator*=(const BigInt&);
58  BigInt& operator/=(const BigInt&);
59  BigInt& operator%=(const BigInt&);
60  BigInt& operator+=(const long long&);
61  BigInt& operator-=(const long long&);
62  BigInt& operator*=(const long long&);
63  BigInt& operator/=(const long long&);
64  BigInt& operator%=(const long long&);
65  BigInt& operator+=(const std::string&);
66  BigInt& operator-=(const std::string&);
67  BigInt& operator*=(const std::string&);
68  BigInt& operator/=(const std::string&);
69  BigInt& operator%=(const std::string&);
70 
71  // Increment and decrement operators:
72  BigInt& operator++(); // pre-increment
73  BigInt& operator--(); // pre-decrement
74  BigInt operator++(int); // post-increment
75  BigInt operator--(int); // post-decrement
76 
77  // Relational operators:
78  bool operator<(const BigInt&) const;
79  bool operator>(const BigInt&) const;
80  bool operator<=(const BigInt&) const;
81  bool operator>=(const BigInt&) const;
82  bool operator==(const BigInt&) const;
83  bool operator!=(const BigInt&) const;
84  bool operator<(const long long&) const;
85  bool operator>(const long long&) const;
86  bool operator<=(const long long&) const;
87  bool operator>=(const long long&) const;
88  bool operator==(const long long&) const;
89  bool operator!=(const long long&) const;
90  bool operator<(const std::string&) const;
91  bool operator>(const std::string&) const;
92  bool operator<=(const std::string&) const;
93  bool operator>=(const std::string&) const;
94  bool operator==(const std::string&) const;
95  bool operator!=(const std::string&) const;
96 
97  // I/O stream operators:
98  friend std::istream& operator>>(std::istream&, BigInt&);
99  friend std::ostream& operator<<(std::ostream&, const BigInt&);
100 
101  // Conversion functions:
102  std::string to_string() const;
103  int to_int() const;
104  long to_long() const;
105  long long to_long_long() const;
106 
107  // Random number generating functions:
108  friend BigInt big_random(size_t);
109 };
110 
111 #endif // BIG_INT_HPP
bool operator>=(const BigInt &) const
Greater than equal to operator for two BigInt values.
Definition: relational.hpp:73
-
BigInt & operator/=(const BigInt &)
Shorthand for BigInt::operator/(const BigInt &) const.
Definition: arithmetic_assignment.hpp:48
-
long to_long() const
Converts BigInt into long
Definition: conversion.hpp:45
-
bool operator!=(const BigInt &) const
Not Equal To operator for two BigInt values.
Definition: relational.hpp:30
-
long long to_long_long() const
Converts BigInt into long long
Definition: conversion.hpp:57
-
BigInt & operator--()
Pre-decrements the BigInt by 1.
Definition: increment_decrement.hpp:30
-
BigInt & operator+=(const BigInt &)
Shorthand for BigInt::operator+(const BigInt &) const.
Definition: arithmetic_assignment.hpp:18
-
BigInt operator/(const BigInt &) const
Performs integer division on two BigInt values and returns quotient.
Definition: binary_arithmetic.hpp:256
-
friend std::ostream & operator<<(std::ostream &, const BigInt &)
Put BigInt into the output stream.
Definition: io_stream.hpp:30
-
Class that contains an arbitrarily sized integer.
Definition: BigInt.hpp:15
-
BigInt()
Default constructor for BigInt.
Definition: constructors.hpp:19
-
BigInt & operator%=(const BigInt &)
Shorthand for BigInt::operator%(const BigInt &) const.
Definition: arithmetic_assignment.hpp:58
-
std::string to_string() const
Converts BigInt into an std::string representation.
Definition: conversion.hpp:20
-
BigInt operator*(const BigInt &) const
Performs multiplication on two BigInt values.
Definition: binary_arithmetic.hpp:153
-
bool operator<(const BigInt &) const
Less than operator for two BigInt values.
Definition: relational.hpp:38
-
int to_int() const
Converts BigInt into int
Definition: conversion.hpp:33
-
bool operator>(const BigInt &) const
Greater than operator for two BigInt values.
Definition: relational.hpp:57
-
BigInt & operator*=(const BigInt &)
Shorthand for BigInt::operator*(const BigInt &) const.
Definition: arithmetic_assignment.hpp:38
-
friend std::istream & operator>>(std::istream &, BigInt &)
Get BigInt from the input stream.
Definition: io_stream.hpp:18
-
BigInt operator+() const
Performs unary + operation on BigInt.
Definition: unary_arithmetic.hpp:27
-
bool operator<=(const BigInt &) const
Less than equal to operator for two BigInt values.
Definition: relational.hpp:65
-
bool operator==(const BigInt &) const
Equal To operator for two BigInt values.
Definition: relational.hpp:22
-
friend BigInt big_random(size_t)
Generates a random BigInt with a specificied number of digits.
Definition: random.hpp:35
-
BigInt & operator-=(const BigInt &)
Shorthand for BigInt::operator-(const BigInt &) const.
Definition: arithmetic_assignment.hpp:28
-
BigInt & operator=(const BigInt &)
Assigns BigInt value to BigInt object.
Definition: assignment.hpp:17
-
BigInt & operator++()
Pre-increments the BigInt by 1.
Definition: increment_decrement.hpp:20
-
BigInt operator%(const BigInt &) const
Returns remainder after performing integer division (modulo) on the two BigInt values.
Definition: binary_arithmetic.hpp:324
-
BigInt operator-() const
Performs unary - operation on BigInt.
Definition: unary_arithmetic.hpp:42
-
- - - - diff --git a/docs/html/annotated.html b/docs/html/annotated.html deleted file mode 100644 index 3e48394..0000000 --- a/docs/html/annotated.html +++ /dev/null @@ -1,87 +0,0 @@ - - - - - - - -Class List - - - - - - - - - - -
-
- - - - - - - -
-
Big Integer library for C++
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
-
Class List
-
-
-
Here are the classes, structs, unions and interfaces with brief descriptions:
- - -
 CBigIntClass that contains an arbitrarily sized integer
-
-
- - - - diff --git a/docs/html/arithmetic__assignment_8hpp.html b/docs/html/arithmetic__assignment_8hpp.html deleted file mode 100644 index 26997be..0000000 --- a/docs/html/arithmetic__assignment_8hpp.html +++ /dev/null @@ -1,97 +0,0 @@ - - - - - - - -/Users/Mohsin/Repos/BigInt/include/operators/arithmetic_assignment.hpp File Reference - - - - - - - - - - -
-
- - - - - - - -
-
Big Integer library for C++
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
arithmetic_assignment.hpp File Reference
-
-
- -

Arithmetic-assignment operators. -More...

-
#include "BigInt.hpp"
-#include "constructors/constructors.hpp"
-#include "operators/assignment.hpp"
-#include "operators/binary_arithmetic.hpp"
-
-

Go to the source code of this file.

-

Detailed Description

-

Arithmetic-assignment operators.

-
- - - - diff --git a/docs/html/arithmetic__assignment_8hpp_source.html b/docs/html/arithmetic__assignment_8hpp_source.html deleted file mode 100644 index 6556f01..0000000 --- a/docs/html/arithmetic__assignment_8hpp_source.html +++ /dev/null @@ -1,97 +0,0 @@ - - - - - - - -/Users/Mohsin/Repos/BigInt/include/operators/arithmetic_assignment.hpp Source File - - - - - - - - - - -
-
- - - - - - - -
-
Big Integer library for C++
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
arithmetic_assignment.hpp
-
-
-Go to the documentation of this file.
1 
6 #ifndef BIG_INT_ARITHMETIC_ASSIGNMENT_OPERATORS_HPP
7 #define BIG_INT_ARITHMETIC_ASSIGNMENT_OPERATORS_HPP
8 
9 #include "BigInt.hpp"
11 #include "operators/assignment.hpp"
13 
14 
19  *this = *this + num;
20 
21  return *this;
22 }
23 
24 
29  *this = *this - num;
30 
31  return *this;
32 }
33 
34 
39  *this = *this * num;
40 
41  return *this;
42 }
43 
44 
49  *this = *this / num;
50 
51  return *this;
52 }
53 
54 
59  *this = *this % num;
60 
61  return *this;
62 }
63 
64 
68 BigInt& BigInt::operator+=(const long long& num) {
69  *this = *this + BigInt(num);
70 
71  return *this;
72 }
73 
74 
78 BigInt& BigInt::operator-=(const long long& num) {
79  *this = *this - BigInt(num);
80 
81  return *this;
82 }
83 
84 
88 BigInt& BigInt::operator*=(const long long& num) {
89  *this = *this * BigInt(num);
90 
91  return *this;
92 }
93 
94 
98 BigInt& BigInt::operator/=(const long long& num) {
99  *this = *this / BigInt(num);
100 
101  return *this;
102 }
103 
104 
108 BigInt& BigInt::operator%=(const long long& num) {
109  *this = *this % BigInt(num);
110 
111  return *this;
112 }
113 
114 
118 BigInt& BigInt::operator+=(const std::string& num) {
119  *this = *this + BigInt(num);
120 
121  return *this;
122 }
123 
124 
128 BigInt& BigInt::operator-=(const std::string& num) {
129  *this = *this - BigInt(num);
130 
131  return *this;
132 }
133 
134 
138 BigInt& BigInt::operator*=(const std::string& num) {
139  *this = *this * BigInt(num);
140 
141  return *this;
142 }
143 
144 
148 BigInt& BigInt::operator/=(const std::string& num) {
149  *this = *this / BigInt(num);
150 
151  return *this;
152 }
153 
154 
158 BigInt& BigInt::operator%=(const std::string& num) {
159  *this = *this % BigInt(num);
160 
161  return *this;
162 }
163 
164 #endif // BIG_INT_ARITHMETIC_ASSIGNMENT_OPERATORS_HPP
BigInt & operator/=(const BigInt &)
Shorthand for BigInt::operator/(const BigInt &) const.
Definition: arithmetic_assignment.hpp:48
-
Assignment operators of BigInt.
-
BigInt & operator+=(const BigInt &)
Shorthand for BigInt::operator+(const BigInt &) const.
Definition: arithmetic_assignment.hpp:18
-
Class that contains an arbitrarily sized integer.
Definition: BigInt.hpp:15
-
BigInt()
Default constructor for BigInt.
Definition: constructors.hpp:19
-
BigInt & operator%=(const BigInt &)
Shorthand for BigInt::operator%(const BigInt &) const.
Definition: arithmetic_assignment.hpp:58
-
contains constructors of BigInt
-
BigInt & operator*=(const BigInt &)
Shorthand for BigInt::operator*(const BigInt &) const.
Definition: arithmetic_assignment.hpp:38
-
Binary arithmetic operators for BigInt.
-
Contains class declaration for BigInt.
-
BigInt & operator-=(const BigInt &)
Shorthand for BigInt::operator-(const BigInt &) const.
Definition: arithmetic_assignment.hpp:28
-
- - - - diff --git a/docs/html/assignment_8hpp.html b/docs/html/assignment_8hpp.html deleted file mode 100644 index 64fe328..0000000 --- a/docs/html/assignment_8hpp.html +++ /dev/null @@ -1,95 +0,0 @@ - - - - - - - -/Users/Mohsin/Repos/BigInt/include/operators/assignment.hpp File Reference - - - - - - - - - - -
-
- - - - - - - -
-
Big Integer library for C++
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
assignment.hpp File Reference
-
-
- -

Assignment operators of BigInt. -More...

-
#include "BigInt.hpp"
-#include "constructors/constructors.hpp"
-
-

Go to the source code of this file.

-

Detailed Description

-

Assignment operators of BigInt.

-
- - - - diff --git a/docs/html/assignment_8hpp_source.html b/docs/html/assignment_8hpp_source.html deleted file mode 100644 index bf352cc..0000000 --- a/docs/html/assignment_8hpp_source.html +++ /dev/null @@ -1,90 +0,0 @@ - - - - - - - -/Users/Mohsin/Repos/BigInt/include/operators/assignment.hpp Source File - - - - - - - - - - -
-
- - - - - - - -
-
Big Integer library for C++
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
assignment.hpp
-
-
-Go to the documentation of this file.
1 
7 #ifndef BIG_INT_ASSIGNMENT_OPERATORS_HPP
8 #define BIG_INT_ASSIGNMENT_OPERATORS_HPP
9 
10 #include "BigInt.hpp"
12 
13 
18  value = num.value;
19  sign = num.sign;
20 
21  return *this;
22 }
23 
24 
30 BigInt& BigInt::operator=(const long long& num) {
31  BigInt temp(num);
32  value = temp.value;
33  sign = temp.sign;
34 
35  return *this;
36 }
37 
38 
44 BigInt& BigInt::operator=(const std::string& num) {
45  BigInt temp(num);
46  value = temp.value;
47  sign = temp.sign;
48 
49  return *this;
50 }
51 
52 #endif // BIG_INT_ASSIGNMENT_OPERATORS_HPP
Class that contains an arbitrarily sized integer.
Definition: BigInt.hpp:15
-
contains constructors of BigInt
-
Contains class declaration for BigInt.
-
BigInt & operator=(const BigInt &)
Assigns BigInt value to BigInt object.
Definition: assignment.hpp:17
-
- - - - diff --git a/docs/html/bc_s.png b/docs/html/bc_s.png deleted file mode 100644 index 224b29a..0000000 Binary files a/docs/html/bc_s.png and /dev/null differ diff --git a/docs/html/bdwn.png b/docs/html/bdwn.png deleted file mode 100644 index 940a0b9..0000000 Binary files a/docs/html/bdwn.png and /dev/null differ diff --git a/docs/html/binary__arithmetic_8hpp.html b/docs/html/binary__arithmetic_8hpp.html deleted file mode 100644 index 8b02e14..0000000 --- a/docs/html/binary__arithmetic_8hpp.html +++ /dev/null @@ -1,474 +0,0 @@ - - - - - - - -/Users/Mohsin/Repos/BigInt/include/operators/binary_arithmetic.hpp File Reference - - - - - - - - - - -
-
- - - - - - - -
-
Big Integer library for C++
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-Functions | -Variables
-
-
binary_arithmetic.hpp File Reference
-
-
- -

Binary arithmetic operators for BigInt. -More...

-
#include <climits>
-#include <cmath>
-#include <string>
-#include "BigInt.hpp"
-#include "constructors/constructors.hpp"
-#include "functions/math.hpp"
-#include "functions/utility.hpp"
-#include "operators/arithmetic_assignment.hpp"
-#include "operators/assignment.hpp"
-#include "operators/increment_decrement.hpp"
-#include "operators/relational.hpp"
-#include "operators/unary_arithmetic.hpp"
-
-

Go to the source code of this file.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

-Functions

BigInt operator+ (const long long &lhs, const BigInt &rhs)
 Overloaded operator for adding BigInt to long long More...
 
BigInt operator- (const long long &lhs, const BigInt &rhs)
 Overloaded operator for subtracting BigInt by long long More...
 
BigInt operator* (const long long &lhs, const BigInt &rhs)
 Overloaded operator for multiplying long long and BigInt. More...
 
BigInt operator/ (const long long &lhs, const BigInt &rhs)
 Overloaded operator for integer dividing long long by BigInt. More...
 
BigInt operator% (const long long &lhs, const BigInt &rhs)
 Overloaded operator for performing long long modulo BigInt. More...
 
BigInt operator+ (const std::string &lhs, const BigInt &rhs)
 Overloaded operator for adding BigInt to std::string More...
 
BigInt operator- (const std::string &lhs, const BigInt &rhs)
 Overloaded operator for subtracting BigInt by std::string More...
 
BigInt operator* (const std::string &lhs, const BigInt &rhs)
 Overloaded operator for multiplying std::string and BigInt. More...
 
BigInt operator/ (const std::string &lhs, const BigInt &rhs)
 Overloaded operator for integer dividing std::string by BigInt. More...
 
BigInt operator% (const std::string &lhs, const BigInt &rhs)
 Overloaded operator for performing std::string modulo BigInt. More...
 
- - - -

-Variables

const long long FLOOR_SQRT_LLONG_MAX = 3037000499
 
-

Detailed Description

-

Binary arithmetic operators for BigInt.

-

Function Documentation

- -

◆ operator%() [1/2]

- -
-
- - - - - - - - - - - - - - - - - - -
BigInt operator% (const long long & lhs,
const BigIntrhs 
)
-
- -

Overloaded operator for performing long long modulo BigInt.

-

Used for lhs (long long) % rhs (BigInt)

- -
-
- -

◆ operator%() [2/2]

- -
-
- - - - - - - - - - - - - - - - - - -
BigInt operator% (const std::string & lhs,
const BigIntrhs 
)
-
- -

Overloaded operator for performing std::string modulo BigInt.

-

Used for lhs (std::string) % rhs (BigInt)

- -
-
- -

◆ operator*() [1/2]

- -
-
- - - - - - - - - - - - - - - - - - -
BigInt operator* (const long long & lhs,
const BigIntrhs 
)
-
- -

Overloaded operator for multiplying long long and BigInt.

-

Used for lhs (long long) * rhs (BigInt)

- -
-
- -

◆ operator*() [2/2]

- -
-
- - - - - - - - - - - - - - - - - - -
BigInt operator* (const std::string & lhs,
const BigIntrhs 
)
-
- -

Overloaded operator for multiplying std::string and BigInt.

-

Used for lhs (std::string) * rhs (BigInt)

- -
-
- -

◆ operator+() [1/2]

- -
-
- - - - - - - - - - - - - - - - - - -
BigInt operator+ (const long long & lhs,
const BigIntrhs 
)
-
- -

Overloaded operator for adding BigInt to long long

-

Used for lhs (long long) + rhs (BigInt)

- -
-
- -

◆ operator+() [2/2]

- -
-
- - - - - - - - - - - - - - - - - - -
BigInt operator+ (const std::string & lhs,
const BigIntrhs 
)
-
- -

Overloaded operator for adding BigInt to std::string

-

Used for lhs (std::string) + rhs (BigInt)

- -
-
- -

◆ operator-() [1/2]

- -
-
- - - - - - - - - - - - - - - - - - -
BigInt operator- (const long long & lhs,
const BigIntrhs 
)
-
- -

Overloaded operator for subtracting BigInt by long long

-

Used for lhs (long long) - rhs (BigInt)

- -
-
- -

◆ operator-() [2/2]

- -
-
- - - - - - - - - - - - - - - - - - -
BigInt operator- (const std::string & lhs,
const BigIntrhs 
)
-
- -

Overloaded operator for subtracting BigInt by std::string

-

Used for lhs (std::string) - rhs (BigInt)

- -
-
- -

◆ operator/() [1/2]

- -
-
- - - - - - - - - - - - - - - - - - -
BigInt operator/ (const long long & lhs,
const BigIntrhs 
)
-
- -

Overloaded operator for integer dividing long long by BigInt.

-

Used for lhs (long long) / rhs (BigInt)

- -
-
- -

◆ operator/() [2/2]

- -
-
- - - - - - - - - - - - - - - - - - -
BigInt operator/ (const std::string & lhs,
const BigIntrhs 
)
-
- -

Overloaded operator for integer dividing std::string by BigInt.

-

Used for lhs (std::string) / rhs (BigInt)

- -
-
-

Variable Documentation

- -

◆ FLOOR_SQRT_LLONG_MAX

- -
-
- - - - -
const long long FLOOR_SQRT_LLONG_MAX = 3037000499
-
-

Square root of LLONG_MAX

- -
-
-
- - - - diff --git a/docs/html/binary__arithmetic_8hpp_source.html b/docs/html/binary__arithmetic_8hpp_source.html deleted file mode 100644 index efd0c44..0000000 --- a/docs/html/binary__arithmetic_8hpp_source.html +++ /dev/null @@ -1,115 +0,0 @@ - - - - - - - -/Users/Mohsin/Repos/BigInt/include/operators/binary_arithmetic.hpp Source File - - - - - - - - - - -
-
- - - - - - - -
-
Big Integer library for C++
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
binary_arithmetic.hpp
-
-
-Go to the documentation of this file.
1 
7 #ifndef BIG_INT_BINARY_ARITHMETIC_OPERATORS_HPP
8 #define BIG_INT_BINARY_ARITHMETIC_OPERATORS_HPP
9 
10 #include <climits>
11 #include <cmath>
12 #include <string>
13 
14 #include "BigInt.hpp"
16 #include "functions/math.hpp"
17 #include "functions/utility.hpp"
19 #include "operators/assignment.hpp"
21 #include "operators/relational.hpp"
23 
24 const long long FLOOR_SQRT_LLONG_MAX = 3037000499;
34 BigInt BigInt::operator+(const BigInt& num) const {
35  // if the operands are of opposite signs, perform subtraction
36  if (this->sign == '+' and num.sign == '-') {
37  BigInt rhs = num;
38  rhs.sign = '+';
39  return *this - rhs;
40  }
41  else if (this->sign == '-' and num.sign == '+') {
42  BigInt lhs = *this;
43  lhs.sign = '+';
44  return -(lhs - num);
45  }
46 
47  // identify the numbers as `larger` and `smaller`
48  std::string larger, smaller;
49  std::tie(larger, smaller) = get_larger_and_smaller(this->value, num.value);
50 
51  BigInt result; // the resultant sum
52  result.value = ""; // the value is cleared as the digits will be appended
53  short carry = 0, sum;
54  // add the two values
55  for (long i = larger.size() - 1; i >= 0; i--) {
56  sum = larger[i] - '0' + smaller[i] - '0' + carry;
57  result.value = std::to_string(sum % 10) + result.value;
58  carry = sum / (short) 10;
59  }
60  if (carry)
61  result.value = std::to_string(carry) + result.value;
62 
63  // if the operands are negative, the result is negative
64  if (this->sign == '-' and result.value != "0")
65  result.sign = '-';
66 
67  return result;
68 }
69 
70 
80 BigInt BigInt::operator-(const BigInt& num) const {
81  // if the operands are of opposite signs, perform addition
82  if (this->sign == '+' and num.sign == '-') {
83  BigInt rhs = num;
84  rhs.sign = '+';
85  return *this + rhs;
86  }
87  else if (this->sign == '-' and num.sign == '+') {
88  BigInt lhs = *this;
89  lhs.sign = '+';
90  return -(lhs + num);
91  }
92 
93  BigInt result; // the resultant difference
94  // identify the numbers as `larger` and `smaller`
95  std::string larger, smaller;
96  if (abs(*this) > abs(num)) {
97  larger = this->value;
98  smaller = num.value;
99 
100  if (this->sign == '-') // -larger - -smaller = -result
101  result.sign = '-';
102  }
103  else {
104  larger = num.value;
105  smaller = this->value;
106 
107  if (num.sign == '+') // smaller - larger = -result
108  result.sign = '-';
109  }
110  // pad the smaller number with zeroes
111  add_leading_zeroes(smaller, larger.size() - smaller.size());
112 
113  result.value = ""; // the value is cleared as the digits will be appended
114  short difference;
115  long i, j;
116  // subtract the two values
117  for (i = larger.size() - 1; i >= 0; i--) {
118  difference = larger[i] - smaller[i];
119  if (difference < 0) {
120  for (j = i - 1; j >= 0; j--) {
121  if (larger[j] != '0') {
122  larger[j]--; // borrow from the j-th digit
123  break;
124  }
125  }
126  j++;
127  while (j != i) {
128  larger[j] = '9'; // add the borrow and take away 1
129  j++;
130  }
131  difference += 10; // add the borrow
132  }
133  result.value = std::to_string(difference) + result.value;
134  }
135  strip_leading_zeroes(result.value);
136 
137  // if the result is 0, set its sign as +
138  if (result.value == "0")
139  result.sign = '+';
140 
141  return result;
142 }
143 
144 
153 BigInt BigInt::operator*(const BigInt& num) const {
154  if (*this == 0 or num == 0)
155  return BigInt(0);
156  if (*this == 1)
157  return num;
158  if (num == 1)
159  return *this;
160 
161  BigInt product;
162  if (abs(*this) <= FLOOR_SQRT_LLONG_MAX and abs(num) <= FLOOR_SQRT_LLONG_MAX)
163  product = std::stoll(this->value) * std::stoll(num.value);
164  else if (is_power_of_10(this->value)){ // if LHS is a power of 10 do optimised operation
165  product.value = num.value;
166  product.value.append(this->value.begin() + 1, this->value.end());
167  }
168  else if (is_power_of_10(num.value)){ // if RHS is a power of 10 do optimised operation
169  product.value = this->value;
170  product.value.append(num.value.begin() + 1, num.value.end());
171  }
172  else {
173  // identify the numbers as `larger` and `smaller`
174  std::string larger, smaller;
175  std::tie(larger, smaller) = get_larger_and_smaller(this->value, num.value);
176 
177  size_t half_length = larger.size() / 2;
178  auto half_length_ceil = (size_t) ceil(larger.size() / 2.0);
179 
180  BigInt num1_high, num1_low;
181  num1_high = larger.substr(0, half_length);
182  num1_low = larger.substr(half_length);
183 
184  BigInt num2_high, num2_low;
185  num2_high = smaller.substr(0, half_length);
186  num2_low = smaller.substr(half_length);
187 
188  strip_leading_zeroes(num1_high.value);
189  strip_leading_zeroes(num1_low.value);
190  strip_leading_zeroes(num2_high.value);
191  strip_leading_zeroes(num2_low.value);
192 
193  BigInt prod_high, prod_mid, prod_low;
194  prod_high = num1_high * num2_high;
195  prod_low = num1_low * num2_low;
196  prod_mid = (num1_high + num1_low) * (num2_high + num2_low)
197  - prod_high - prod_low;
198 
199  add_trailing_zeroes(prod_high.value, 2 * half_length_ceil);
200  add_trailing_zeroes(prod_mid.value, half_length_ceil);
201 
202  strip_leading_zeroes(prod_high.value);
203  strip_leading_zeroes(prod_mid.value);
204  strip_leading_zeroes(prod_low.value);
205 
206  product = prod_high + prod_mid + prod_low;
207  }
208  strip_leading_zeroes(product.value);
209 
210  if (this->sign == num.sign)
211  product.sign = '+';
212  else
213  product.sign = '-';
214 
215  return product;
216 }
217 
218 
230 std::tuple<BigInt, BigInt> divide(const BigInt& dividend, const BigInt& divisor) {
231  BigInt quotient, remainder, temp;
232 
233  temp = divisor;
234  quotient = 1;
235  while (temp < dividend) {
236  quotient++;
237  temp += divisor;
238  }
239  if (temp > dividend) {
240  quotient--;
241  remainder = dividend - (temp - divisor);
242  }
243 
244  return std::make_tuple(quotient, remainder);
245 }
246 
247 
256 BigInt BigInt::operator/(const BigInt& num) const {
257  BigInt abs_dividend = abs(*this);
258  BigInt abs_divisor = abs(num);
259 
260  if (num == 0)
261  throw std::logic_error("Attempted division by zero");
262  if (abs_dividend < abs_divisor)
263  return BigInt(0);
264  if (num == 1)
265  return *this;
266  if (num == -1)
267  return -(*this);
268 
269  BigInt quotient;
270  if (abs_dividend <= LLONG_MAX and abs_divisor <= LLONG_MAX)
271  quotient = std::stoll(abs_dividend.value) / std::stoll(abs_divisor.value);
272  else if (abs_dividend == abs_divisor)
273  quotient = 1;
274  else if (is_power_of_10(abs_divisor.value)) { // if divisor is a power of 10 do optimised calculation
275  size_t digits_in_quotient = abs_dividend.value.size() - abs_divisor.value.size() + 1;
276  quotient.value = abs_dividend.value.substr(0, digits_in_quotient);
277  }
278  else {
279  quotient.value = ""; // the value is cleared as digits will be appended
280  BigInt chunk, chunk_quotient, chunk_remainder;
281  size_t chunk_index = 0;
282  chunk_remainder.value = abs_dividend.value.substr(chunk_index, abs_divisor.value.size() - 1);
283  chunk_index = abs_divisor.value.size() - 1;
284  while (chunk_index < abs_dividend.value.size()) {
285  chunk.value = chunk_remainder.value.append(1, abs_dividend.value[chunk_index]);
286  chunk_index++;
287  while (chunk < abs_divisor) {
288  quotient.value += "0";
289  if (chunk_index < abs_dividend.value.size()) {
290  chunk.value.append(1, abs_dividend.value[chunk_index]);
291  chunk_index++;
292  }
293  else
294  break;
295  }
296  if (chunk == abs_divisor) {
297  quotient.value += "1";
298  chunk_remainder = 0;
299  }
300  else if (chunk > abs_divisor) {
301  strip_leading_zeroes(chunk.value);
302  std::tie(chunk_quotient, chunk_remainder) = divide(chunk, abs_divisor);
303  quotient.value += chunk_quotient.value;
304  }
305  }
306  }
307  strip_leading_zeroes(quotient.value);
308 
309  if (this->sign == num.sign)
310  quotient.sign = '+';
311  else
312  quotient.sign = '-';
313 
314  return quotient;
315 }
316 
317 
324 BigInt BigInt::operator%(const BigInt& num) const {
325  BigInt abs_dividend = abs(*this);
326  BigInt abs_divisor = abs(num);
327 
328  if (abs_divisor == 0)
329  throw std::logic_error("Attempted division by zero");
330  if (abs_divisor == 1 or abs_divisor == abs_dividend)
331  return BigInt(0);
332 
333  BigInt remainder;
334  if (abs_dividend <= LLONG_MAX and abs_divisor <= LLONG_MAX)
335  remainder = std::stoll(abs_dividend.value) % std::stoll(abs_divisor.value);
336  else if (abs_dividend < abs_divisor)
337  remainder = abs_dividend;
338  else if (is_power_of_10(num.value)){ // if num is a power of 10 use optimised calculation
339  size_t no_of_zeroes = num.value.size() - 1;
340  remainder.value = abs_dividend.value.substr(abs_dividend.value.size() - no_of_zeroes);
341  }
342  else {
343  BigInt quotient = abs_dividend / abs_divisor;
344  remainder = abs_dividend - quotient * abs_divisor;
345  }
346  strip_leading_zeroes(remainder.value);
347 
348  // remainder has the same sign as that of the dividend
349  remainder.sign = this->sign;
350  if (remainder.value == "0") // except if its zero
351  remainder.sign = '+';
352 
353  return remainder;
354 }
355 
356 
366 BigInt BigInt::operator+(const long long& num) const {
367  return *this + BigInt(num);
368 }
369 
370 
376 BigInt operator+(const long long& lhs, const BigInt& rhs) {
377  return BigInt(lhs) + rhs;
378 }
379 
380 
390 BigInt BigInt::operator-(const long long& num) const {
391  return *this - BigInt(num);
392 }
393 
394 
400 BigInt operator-(const long long& lhs, const BigInt& rhs) {
401  return BigInt(lhs) - rhs;
402 }
403 
404 
414 BigInt BigInt::operator*(const long long& num) const {
415  return *this * BigInt(num);
416 }
417 
418 
424 BigInt operator*(const long long& lhs, const BigInt& rhs) {
425  return BigInt(lhs) * rhs;
426 }
427 
428 
438 BigInt BigInt::operator/(const long long& num) const {
439  return *this / BigInt(num);
440 }
441 
442 
448 BigInt operator/(const long long& lhs, const BigInt& rhs) {
449  return BigInt(lhs) / rhs;
450 }
451 
452 
462 BigInt BigInt::operator%(const long long& num) const {
463  return *this % BigInt(num);
464 }
465 
466 
472 BigInt operator%(const long long& lhs, const BigInt& rhs) {
473  return BigInt(lhs) % rhs;
474 }
475 
476 
486 BigInt BigInt::operator+(const std::string& num) const {
487  return *this + BigInt(num);
488 }
489 
490 
496 BigInt operator+(const std::string& lhs, const BigInt& rhs) {
497  return BigInt(lhs) + rhs;
498 }
499 
500 
510 BigInt BigInt::operator-(const std::string& num) const {
511  return *this - BigInt(num);
512 }
513 
514 
520 BigInt operator-(const std::string& lhs, const BigInt& rhs) {
521  return BigInt(lhs) - rhs;
522 }
523 
524 
534 BigInt BigInt::operator*(const std::string& num) const {
535  return *this * BigInt(num);
536 }
537 
538 
544 BigInt operator*(const std::string& lhs, const BigInt& rhs) {
545  return BigInt(lhs) * rhs;
546 }
547 
548 
558 BigInt BigInt::operator/(const std::string& num) const {
559  return *this / BigInt(num);
560 }
561 
562 
568 BigInt operator/(const std::string& lhs, const BigInt& rhs) {
569  return BigInt(lhs) / rhs;
570 }
571 
572 
582 BigInt BigInt::operator%(const std::string& num) const {
583  return *this % BigInt(num);
584 }
585 
586 
592 BigInt operator%(const std::string& lhs, const BigInt& rhs) {
593  return BigInt(lhs) % rhs;
594 }
595 
596 #endif // BIG_INT_BINARY_ARITHMETIC_OPERATORS_HPP
BigInt operator+(const long long &lhs, const BigInt &rhs)
Overloaded operator for adding BigInt to long long
Definition: binary_arithmetic.hpp:376
-
bool is_power_of_10(const std::string &num)
Checks if a std::string value is a power of ten.
Definition: utility.hpp:114
-
std::tuple< std::string, std::string > get_larger_and_smaller(const std::string &num1, const std::string &num2)
Returns std::string parameters in order of value.
Definition: utility.hpp:86
-
BigInt operator-(const long long &lhs, const BigInt &rhs)
Overloaded operator for subtracting BigInt by long long
Definition: binary_arithmetic.hpp:400
-
const long long FLOOR_SQRT_LLONG_MAX
Definition: binary_arithmetic.hpp:24
-
Assignment operators of BigInt.
-
BigInt operator/(const long long &lhs, const BigInt &rhs)
Overloaded operator for integer dividing long long by BigInt.
Definition: binary_arithmetic.hpp:448
-
BigInt operator%(const long long &lhs, const BigInt &rhs)
Overloaded operator for performing long long modulo BigInt.
Definition: binary_arithmetic.hpp:472
-
BigInt operator/(const BigInt &) const
Performs integer division on two BigInt values and returns quotient.
Definition: binary_arithmetic.hpp:256
-
Class that contains an arbitrarily sized integer.
Definition: BigInt.hpp:15
-
BigInt()
Default constructor for BigInt.
Definition: constructors.hpp:19
-
std::tuple< BigInt, BigInt > divide(const BigInt &dividend, const BigInt &divisor)
Helper function to perform division on two BigInt values.
Definition: binary_arithmetic.hpp:230
-
Common math functions that work on BigInt.
-
Arithmetic-assignment operators.
-
BigInt operator*(const BigInt &) const
Performs multiplication on two BigInt values.
Definition: binary_arithmetic.hpp:153
-
void add_trailing_zeroes(std::string &num, size_t num_zeroes)
Adds trailing zeros to std::string value.
Definition: utility.hpp:69
-
Contains some utility functions.
-
Defining the unary arithmetic operators for BigInt.
-
contains constructors of BigInt
-
Increment and decrement operators for BigInt.
-
void add_leading_zeroes(std::string &num, size_t num_zeroes)
Adds leading zeros to std::string value.
Definition: utility.hpp:58
-
BigInt operator+() const
Performs unary + operation on BigInt.
Definition: unary_arithmetic.hpp:27
-
BigInt operator*(const long long &lhs, const BigInt &rhs)
Overloaded operator for multiplying long long and BigInt.
Definition: binary_arithmetic.hpp:424
-
Contains class declaration for BigInt.
-
BigInt abs(const BigInt &num)
Returns absolute value of the integer.
Definition: math.hpp:21
-
Defining the relational operators for BigInt.
-
BigInt operator%(const BigInt &) const
Returns remainder after performing integer division (modulo) on the two BigInt values.
Definition: binary_arithmetic.hpp:324
-
BigInt operator-() const
Performs unary - operation on BigInt.
Definition: unary_arithmetic.hpp:42
-
void strip_leading_zeroes(std::string &num)
Removes leading zeroes from an std::string integer.
Definition: utility.hpp:33
-
- - - - diff --git a/docs/html/class_big_int-members.html b/docs/html/class_big_int-members.html deleted file mode 100644 index 73e266b..0000000 --- a/docs/html/class_big_int-members.html +++ /dev/null @@ -1,154 +0,0 @@ - - - - - - - -Member List - - - - - - - - - - -
-
- - - - - - - -
-
Big Integer library for C++
-
-
- - - - - - - - -
-
- - -
- -
- -
-
-
-
BigInt Member List
-
-
- -

This is the complete list of members for BigInt, including all inherited members.

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
big_random(size_t)BigIntfriend
BigInt()BigInt
BigInt(const BigInt &)BigInt
BigInt(const long long &)BigInt
BigInt(const std::string &)BigInt
divide(const BigInt &dividend, const BigInt &divisor)BigIntrelated
operator!=(const BigInt &) constBigInt
operator!=(const long long &) constBigInt
operator!=(const std::string &) constBigInt
operator%(const BigInt &) constBigInt
operator%(const long long &) constBigInt
operator%(const std::string &) constBigInt
operator%=(const BigInt &)BigInt
operator%=(const long long &)BigInt
operator%=(const std::string &)BigInt
operator*(const BigInt &) constBigInt
operator*(const long long &) constBigInt
operator*(const std::string &) constBigInt
operator*=(const BigInt &)BigInt
operator*=(const long long &)BigInt
operator*=(const std::string &)BigInt
operator+() constBigInt
operator+(const BigInt &) constBigInt
operator+(const long long &) constBigInt
operator+(const std::string &) constBigInt
operator++()BigInt
operator++(int)BigInt
operator+=(const BigInt &)BigInt
operator+=(const long long &)BigInt
operator+=(const std::string &)BigInt
operator-() constBigInt
operator-(const BigInt &) constBigInt
operator-(const long long &) constBigInt
operator-(const std::string &) constBigInt
operator--()BigInt
operator--(int)BigInt
operator-=(const BigInt &)BigInt
operator-=(const long long &)BigInt
operator-=(const std::string &)BigInt
operator/(const BigInt &) constBigInt
operator/(const long long &) constBigInt
operator/(const std::string &) constBigInt
operator/=(const BigInt &)BigInt
operator/=(const long long &)BigInt
operator/=(const std::string &)BigInt
operator<(const BigInt &) constBigInt
operator<(const long long &) constBigInt
operator<(const std::string &) constBigInt
operator<<(std::ostream &, const BigInt &)BigIntfriend
operator<=(const BigInt &) constBigInt
operator<=(const long long &) constBigInt
operator<=(const std::string &) constBigInt
operator=(const BigInt &)BigInt
operator=(const long long &)BigInt
operator=(const std::string &)BigInt
operator==(const BigInt &) constBigInt
operator==(const long long &) constBigInt
operator==(const std::string &) constBigInt
operator>(const BigInt &) constBigInt
operator>(const long long &) constBigInt
operator>(const std::string &) constBigInt
operator>=(const BigInt &) constBigInt
operator>=(const long long &) constBigInt
operator>=(const std::string &) constBigInt
operator>>(std::istream &, BigInt &)BigIntfriend
to_int() constBigInt
to_long() constBigInt
to_long_long() constBigInt
to_string() constBigInt
- - - - diff --git a/docs/html/class_big_int.html b/docs/html/class_big_int.html deleted file mode 100644 index ac8fd49..0000000 --- a/docs/html/class_big_int.html +++ /dev/null @@ -1,1141 +0,0 @@ - - - - - - - -BigInt Class Reference - - - - - - - - - - -
-
- - - - - - - -
-
Big Integer library for C++
-
-
- - - - - - - - -
-
- - -
- -
- -
-
-
-Public Member Functions | -Friends | -Related Functions | -List of all members
-
-
BigInt Class Reference
-
-
- -

Class that contains an arbitrarily sized integer. - More...

- -

#include <BigInt.hpp>

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

-Public Member Functions

 BigInt ()
 Default constructor for BigInt. More...
 
 BigInt (const BigInt &)
 Copy constructor for BigInt. More...
 
 BigInt (const long long &)
 Constructor that converts long long to BigInt. More...
 
 BigInt (const std::string &)
 Constructor that converts std::string to BigInt. More...
 
-BigIntoperator= (const BigInt &)
 Assigns BigInt value to BigInt object.
 
BigIntoperator= (const long long &)
 Assigns long long value to BigInt object. More...
 
BigIntoperator= (const std::string &)
 Assigns std::string value to BigInt object. More...
 
BigInt operator+ () const
 Performs unary + operation on BigInt. More...
 
BigInt operator- () const
 Performs unary - operation on BigInt. More...
 
BigInt operator+ (const BigInt &) const
 Performs addition on two BigInt values. More...
 
BigInt operator- (const BigInt &) const
 Performs subtraction on two BigInt values. More...
 
BigInt operator* (const BigInt &) const
 Performs multiplication on two BigInt values. More...
 
BigInt operator/ (const BigInt &) const
 Performs integer division on two BigInt values and returns quotient. More...
 
BigInt operator% (const BigInt &) const
 Returns remainder after performing integer division (modulo) on the two BigInt values. More...
 
BigInt operator+ (const long long &) const
 Adds BigInt with long long value. More...
 
BigInt operator- (const long long &) const
 Subtracts long long from BigInt value. More...
 
BigInt operator* (const long long &) const
 Perform multiplication of BigInt and long long value. More...
 
BigInt operator/ (const long long &) const
 Quotient of integer division of BigInt with long long value. More...
 
BigInt operator% (const long long &) const
 Remainder of integer division of BigInt with long long value (modulus) More...
 
BigInt operator+ (const std::string &) const
 Adds BigInt with std::string value. More...
 
BigInt operator- (const std::string &) const
 Subtracts std::string from BigInt value. More...
 
BigInt operator* (const std::string &) const
 Perform multiplication of BigInt and std::string value. More...
 
BigInt operator/ (const std::string &) const
 Quotient of integer division of BigInt with std::string value. More...
 
BigInt operator% (const std::string &) const
 Remainder of integer division of BigInt with std::string value (modulus) More...
 
-BigIntoperator+= (const BigInt &)
 Shorthand for BigInt::operator+(const BigInt &) const.
 
-BigIntoperator-= (const BigInt &)
 Shorthand for BigInt::operator-(const BigInt &) const.
 
-BigIntoperator*= (const BigInt &)
 Shorthand for BigInt::operator*(const BigInt &) const.
 
-BigIntoperator/= (const BigInt &)
 Shorthand for BigInt::operator/(const BigInt &) const.
 
-BigIntoperator%= (const BigInt &)
 Shorthand for BigInt::operator%(const BigInt &) const.
 
-BigIntoperator+= (const long long &)
 Shorthand for BigInt::operator+(const long long &) const.
 
-BigIntoperator-= (const long long &)
 Shorthand for BigInt::operator-(const long long &) const.
 
-BigIntoperator*= (const long long &)
 Shorthand for BigInt::operator*(const long long &) const.
 
-BigIntoperator/= (const long long &)
 Shorthand for BigInt::operator/(const long long &) const.
 
-BigIntoperator%= (const long long &)
 Shorthand for BigInt::operator%(const long long &) const.
 
-BigIntoperator+= (const std::string &)
 Shorthand for BigInt::operator+(const std::string &) const.
 
-BigIntoperator-= (const std::string &)
 Shorthand for BigInt::operator-(const std::string &) const.
 
-BigIntoperator*= (const std::string &)
 Shorthand for BigInt::operator*(const std::string &) const.
 
-BigIntoperator/= (const std::string &)
 Shorthand for BigInt::operator/(const std::string &) const.
 
-BigIntoperator%= (const std::string &)
 Shorthand for BigInt::operator%(const std::string &) const.
 
-BigIntoperator++ ()
 Pre-increments the BigInt by 1.
 
-BigIntoperator-- ()
 Pre-decrements the BigInt by 1.
 
-BigInt operator++ (int)
 Post-increments the BigInt by 1.
 
-BigInt operator-- (int)
 Post-decrements the BigInt by 1.
 
-bool operator< (const BigInt &) const
 Less than operator for two BigInt values.
 
-bool operator> (const BigInt &) const
 Greater than operator for two BigInt values.
 
-bool operator<= (const BigInt &) const
 Less than equal to operator for two BigInt values.
 
-bool operator>= (const BigInt &) const
 Greater than equal to operator for two BigInt values.
 
-bool operator== (const BigInt &) const
 Equal To operator for two BigInt values.
 
-bool operator!= (const BigInt &) const
 Not Equal To operator for two BigInt values.
 
-bool operator< (const long long &) const
 Less Than operator for BigInt vs long long
 
-bool operator> (const long long &) const
 Greater Than operator for BigInt vs long long
 
-bool operator<= (const long long &) const
 Less Than Equal To operator for BigInt vs long long
 
-bool operator>= (const long long &) const
 Greater Than Equal To operator for BigInt vs long long
 
-bool operator== (const long long &) const
 Equal To operator for BigInt vs long long
 
-bool operator!= (const long long &) const
 Not Equal To operator for BigInt vs long long
 
-bool operator< (const std::string &) const
 Less Than operator for BigInt vs std::string
 
-bool operator> (const std::string &) const
 Greater Than operator for BigInt vs std::string
 
-bool operator<= (const std::string &) const
 Less Than Equal To operator for BigInt vs std::string
 
-bool operator>= (const std::string &) const
 Greater Than Equal To operator for BigInt vs std::string
 
-bool operator== (const std::string &) const
 Equal To operator for BigInt vs std::string
 
-bool operator!= (const std::string &) const
 Not Equal To operator for BigInt vs std::string
 
std::string to_string () const
 Converts BigInt into an std::string representation. More...
 
int to_int () const
 Converts BigInt into int More...
 
long to_long () const
 Converts BigInt into long More...
 
long long to_long_long () const
 Converts BigInt into long long More...
 
- - - - - - - - - - -

-Friends

-std::istream & operator>> (std::istream &, BigInt &)
 Get BigInt from the input stream.
 
-std::ostream & operator<< (std::ostream &, const BigInt &)
 Put BigInt into the output stream.
 
BigInt big_random (size_t)
 Generates a random BigInt with a specificied number of digits. More...
 
- - - - - -

-Related Functions

(Note that these are not member functions.)

-
std::tuple< BigInt, BigIntdivide (const BigInt &dividend, const BigInt &divisor)
 Helper function to perform division on two BigInt values. More...
 
-

Detailed Description

-

Class that contains an arbitrarily sized integer.

-

Constructor & Destructor Documentation

- -

◆ BigInt() [1/4]

- -
-
- - - - - - - -
BigInt::BigInt ()
-
- -

Default constructor for BigInt.

-
Returns
BigInt with value initialized to zero.
- -
-
- -

◆ BigInt() [2/4]

- -
-
- - - - - - - - -
BigInt::BigInt (const BigIntnum)
-
- -

Copy constructor for BigInt.

-
Parameters
- - -
numa BigInt that is to be copied
-
-
-
Returns
BigInt with equal value as num
- -
-
- -

◆ BigInt() [3/4]

- -
-
- - - - - - - - -
BigInt::BigInt (const long long & num)
-
- -

Constructor that converts long long to BigInt.

-
Parameters
- - -
numa long long value
-
-
-
Returns
BigInt with equal value as num
- -
-
- -

◆ BigInt() [4/4]

- -
-
- - - - - - - - -
BigInt::BigInt (const std::string & num)
-
- -

Constructor that converts std::string to BigInt.

-
Parameters
- - -
numstd::string that represents an integer
-
-
-
Returns
BigInt with value represented in num
- -
-
-

Member Function Documentation

- -

◆ operator%() [1/3]

- -
-
- - - - - - - - -
BigInt BigInt::operator% (const BigIntnum) const
-
- -

Returns remainder after performing integer division (modulo) on the two BigInt values.

-
Parameters
- - -
num(which is the divisor or modulus) is the BigInt on the right
-
-
-
Returns
a BigInt containing the remainder of the division (or modulus operation) performed
- -
-
- -

◆ operator%() [2/3]

- -
-
- - - - - - - - -
BigInt BigInt::operator% (const long long & num) const
-
- -

Remainder of integer division of BigInt with long long value (modulus)

-

Uses BigInt::operator%(const BigInt&) const after converting num to BigInt type.

-
Parameters
- - -
numis a long long value (modulus)
-
-
-
Returns
BigInt remainder of two integers
- -
-
- -

◆ operator%() [3/3]

- -
-
- - - - - - - - -
BigInt BigInt::operator% (const std::string & num) const
-
- -

Remainder of integer division of BigInt with std::string value (modulus)

-

Uses BigInt::operator%(const BigInt&) const after converting num to BigInt type.

-
Parameters
- - -
numis a std::string value (modulus)
-
-
-
Returns
BigInt remainder of two integers
- -
-
- -

◆ operator*() [1/3]

- -
-
- - - - - - - - -
BigInt BigInt::operator* (const BigIntnum) const
-
- -

Performs multiplication on two BigInt values.

-

Implemented using Karatsuba's algorithm.

-
Parameters
- - -
numis the BigInt on the right
-
-
-
Returns
a BigInt containing the product of the two numbers
- -
-
- -

◆ operator*() [2/3]

- -
-
- - - - - - - - -
BigInt BigInt::operator* (const long long & num) const
-
- -

Perform multiplication of BigInt and long long value.

-

Uses BigInt::operator*(const BigInt&) const after converting num to BigInt type.

-
Parameters
- - -
numis a long long value
-
-
-
Returns
BigInt product of two integers
- -
-
- -

◆ operator*() [3/3]

- -
-
- - - - - - - - -
BigInt BigInt::operator* (const std::string & num) const
-
- -

Perform multiplication of BigInt and std::string value.

-

Uses BigInt::operator*(const BigInt&) const after converting num to BigInt type.

-
Parameters
- - -
numis a std::string value
-
-
-
Returns
BigInt product of two integers
- -
-
- -

◆ operator+() [1/4]

- -
-
- - - - - - - -
BigInt BigInt::operator+ () const
-
- -

Performs unary + operation on BigInt.

-

Practically same as multiplying with one.

-
Returns
a BigInt object with similar value.
-
Warning
This function does not return the absolute value. To get the absolute value of a BigInt, use the abs function.
-
Todo:
Possibly return reference.
- -
-
- -

◆ operator+() [2/4]

- -
-
- - - - - - - - -
BigInt BigInt::operator+ (const BigIntnum) const
-
- -

Performs addition on two BigInt values.

-

Values added across by carry addition.

-
Parameters
- - -
numis the BigInt on the right
-
-
-
Returns
a BigInt containing the sum of the two values
- -
-
- -

◆ operator+() [3/4]

- -
-
- - - - - - - - -
BigInt BigInt::operator+ (const long long & num) const
-
- -

Adds BigInt with long long value.

-

Uses BigInt::operator+(const BigInt &) const after converting num to BigInt type.

-
Parameters
- - -
numis a long long value
-
-
-
Returns
BigInt sum of two integers
- -
-
- -

◆ operator+() [4/4]

- -
-
- - - - - - - - -
BigInt BigInt::operator+ (const std::string & num) const
-
- -

Adds BigInt with std::string value.

-

Uses BigInt::operator+(const BigInt &) const after converting num to BigInt type.

-
Parameters
- - -
numis a std::string value
-
-
-
Returns
BigInt sum of two integers
- -
-
- -

◆ operator-() [1/4]

- -
-
- - - - - - - -
BigInt BigInt::operator- () const
-
- -

Performs unary - operation on BigInt.

-

Practically same as multiplying with negative one. The sign of the integer is toggled (+ or -).

-
Returns
a BigInt object with toggled value
- -
-
- -

◆ operator-() [2/4]

- -
-
- - - - - - - - -
BigInt BigInt::operator- (const BigIntnum) const
-
- -

Performs subtraction on two BigInt values.

-

Implemented using a borrowing-difference based algorithm.

-
Parameters
- - -
numis the BigInt on the right
-
-
-
Returns
a BigInt containing the difference of the second value from the first
- -
-
- -

◆ operator-() [3/4]

- -
-
- - - - - - - - -
BigInt BigInt::operator- (const long long & num) const
-
- -

Subtracts long long from BigInt value.

-

Uses BigInt::operator-(const BigInt&) const after converting num to BigInt type.

-
Parameters
- - -
numis a long long value
-
-
-
Returns
BigInt difference of two integers
- -
-
- -

◆ operator-() [4/4]

- -
-
- - - - - - - - -
BigInt BigInt::operator- (const std::string & num) const
-
- -

Subtracts std::string from BigInt value.

-

Uses BigInt::operator-(const BigInt&) const after converting num to BigInt type.

-
Parameters
- - -
numis a std::string value
-
-
-
Returns
BigInt difference of two integers
- -
-
- -

◆ operator/() [1/3]

- -
-
- - - - - - - - -
BigInt BigInt::operator/ (const BigIntnum) const
-
- -

Performs integer division on two BigInt values and returns quotient.

-

Uses the long-division method. Makes use of divide()

-
Parameters
- - -
num(which is the divisor) is the BigInt on the right
-
-
-
Returns
a BigInt containing the quotient of the division performed
- -
-
- -

◆ operator/() [2/3]

- -
-
- - - - - - - - -
BigInt BigInt::operator/ (const long long & num) const
-
- -

Quotient of integer division of BigInt with long long value.

-

Uses BigInt::operator/(const BigInt&) const after converting num to BigInt type.

-
Parameters
- - -
numis a long long value
-
-
-
Returns
BigInt quotient of two integers
- -
-
- -

◆ operator/() [3/3]

- -
-
- - - - - - - - -
BigInt BigInt::operator/ (const std::string & num) const
-
- -

Quotient of integer division of BigInt with std::string value.

-

Uses BigInt::operator/(const BigInt&) const after converting num to BigInt type.

-
Parameters
- - -
numis a std::string value
-
-
-
Returns
BigInt quotient of two integers
- -
-
- -

◆ operator=() [1/2]

- -
-
- - - - - - - - -
BigInt & BigInt::operator= (const long long & num)
-
- -

Assigns long long value to BigInt object.

-

Makes use of BigInt::BigInt(const long long &num)

- -
-
- -

◆ operator=() [2/2]

- -
-
- - - - - - - - -
BigInt & BigInt::operator= (const std::string & num)
-
- -

Assigns std::string value to BigInt object.

-

Makes use of BigInt::BigInt(const std::string &num)

- -
-
- -

◆ to_int()

- -
-
- - - - - - - -
int BigInt::to_int () const
-
- -

Converts BigInt into int

-
Returns
int containing BigInt value.
-
Warning
If the BigInt range is outside the accepted range of an int, out_of_range exception will be thrown.
- -
-
- -

◆ to_long()

- -
-
- - - - - - - -
long BigInt::to_long () const
-
- -

Converts BigInt into long

-
Returns
long containing BigInt value.
-
Warning
If the BigInt range is outside the accepted range of an long, out_of_range exception will be thrown.
- -
-
- -

◆ to_long_long()

- -
-
- - - - - - - -
long long BigInt::to_long_long () const
-
- -

Converts BigInt into long long

-
Returns
long long containing BigInt value.
-
Warning
If the BigInt range is outside the accepted range of an long long, out_of_range exception will be thrown.
- -
-
- -

◆ to_string()

- -
-
- - - - - - - -
std::string BigInt::to_string () const
-
- -

Converts BigInt into an std::string representation.

-

Returns the string representation of the integer with a prefix of '-' if negative, and no prefix otherwise.

-
Returns
std::string representing BigInt value
- -
-
-

Friends And Related Function Documentation

- -

◆ big_random

- -
-
- - - - - -
- - - - - - - - -
BigInt big_random (size_t num_digits = 0)
-
-friend
-
- -

Generates a random BigInt with a specificied number of digits.

-

big_random (num_digits)

-

Returns a random BigInt with a specific number of digits.

Parameters
- - -
num_digitsint specifying number of digits in BigInt. It is optional.
-
-
-
Returns
BigInt with num_digits number of digits
-
Note
if num_digits is not specified, the BigInt will have a random length.
- -
-
- -

◆ divide()

- -
-
- - - - - -
- - - - - - - - - - - - - - - - - - -
std::tuple< BigInt, BigInt > divide (const BigIntdividend,
const BigIntdivisor 
)
-
-related
-
- -

Helper function to perform division on two BigInt values.

-

Does naive divisor addition until dividend is crossed.

-
Parameters
- - - -
dividendis the BigInt value to be divided
divisorif the BigInt value dividend is to be divided by
-
-
-
Returns
an std::tuple of two BigInt values containing the quotient and remainder of the division performed.
- -
-
-
The documentation for this class was generated from the following files: -
- - - - diff --git a/docs/html/classes.html b/docs/html/classes.html deleted file mode 100644 index eb3bc1b..0000000 --- a/docs/html/classes.html +++ /dev/null @@ -1,91 +0,0 @@ - - - - - - - -Class Index - - - - - - - - - - -
-
- - - - - - - -
-
Big Integer library for C++
-
-
- - - - - - - -
- -
-
- - -
- -
- -
-
-
Class Index
-
-
-
b
- - - - - -
  b  
-
BigInt   
-
b
-
- - - - diff --git a/docs/html/closed.png b/docs/html/closed.png deleted file mode 100644 index 98cc2c9..0000000 Binary files a/docs/html/closed.png and /dev/null differ diff --git a/docs/html/constructors_8hpp.html b/docs/html/constructors_8hpp.html deleted file mode 100644 index cf1c974..0000000 --- a/docs/html/constructors_8hpp.html +++ /dev/null @@ -1,95 +0,0 @@ - - - - - - - -/Users/Mohsin/Repos/BigInt/include/constructors/constructors.hpp File Reference - - - - - - - - - - -
-
- - - - - - - -
-
Big Integer library for C++
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
constructors.hpp File Reference
-
-
- -

contains constructors of BigInt -More...

-
#include "BigInt.hpp"
-#include "functions/utility.hpp"
-
-

Go to the source code of this file.

-

Detailed Description

-

contains constructors of BigInt

-
- - - - diff --git a/docs/html/constructors_8hpp_source.html b/docs/html/constructors_8hpp_source.html deleted file mode 100644 index 64b3d5f..0000000 --- a/docs/html/constructors_8hpp_source.html +++ /dev/null @@ -1,92 +0,0 @@ - - - - - - - -/Users/Mohsin/Repos/BigInt/include/constructors/constructors.hpp Source File - - - - - - - - - - -
-
- - - - - - - -
-
Big Integer library for C++
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
constructors.hpp
-
-
-Go to the documentation of this file.
1 
7 #ifndef BIG_INT_CONSTRUCTORS_HPP
8 #define BIG_INT_CONSTRUCTORS_HPP
9 
10 #include "BigInt.hpp"
11 #include "functions/utility.hpp"
12 
13 
20  value = "0";
21  sign = '+';
22 }
23 
24 
31 BigInt::BigInt(const BigInt& num) {
32  value = num.value;
33  sign = num.sign;
34 }
35 
36 
44 BigInt::BigInt(const long long& num) {
45  value = std::to_string(num);
46  if (num < 0) {
47  sign = '-';
48  value = value.substr(1); // remove minus sign from value
49  }
50  else
51  sign = '+';
52 }
53 
54 
61 BigInt::BigInt(const std::string& num) {
62  if (num[0] == '+' or num[0] == '-') { // check for sign
63  std::string magnitude = num.substr(1);
64  if (is_valid_number(magnitude)) {
65  value = magnitude;
66  sign = num[0];
67  }
68  else {
69  throw std::invalid_argument("Expected an integer, got \'" + num + "\'");
70  }
71  }
72  else { // if no sign is specified
73  if (is_valid_number(num)) {
74  value = num;
75  sign = '+'; // positive by default
76  }
77  else {
78  throw std::invalid_argument("Expected an integer, got \'" + num + "\'");
79  }
80  }
81  strip_leading_zeroes(value);
82 }
83 
84 #endif // BIG_INT_CONSTRUCTORS_HPP
bool is_valid_number(const std::string &num)
Checks if std::string value is a valid integer.
Definition: utility.hpp:19
-
Class that contains an arbitrarily sized integer.
Definition: BigInt.hpp:15
-
BigInt()
Default constructor for BigInt.
Definition: constructors.hpp:19
-
Contains some utility functions.
-
Contains class declaration for BigInt.
-
void strip_leading_zeroes(std::string &num)
Removes leading zeroes from an std::string integer.
Definition: utility.hpp:33
-
- - - - diff --git a/docs/html/conversion_8hpp.html b/docs/html/conversion_8hpp.html deleted file mode 100644 index 0c79e59..0000000 --- a/docs/html/conversion_8hpp.html +++ /dev/null @@ -1,93 +0,0 @@ - - - - - - - -/Users/Mohsin/Repos/BigInt/include/functions/conversion.hpp File Reference - - - - - - - - - - -
-
- - - - - - - -
-
Big Integer library for C++
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
conversion.hpp File Reference
-
-
- -

Contains conversion related functions of BigInt. -More...

- -

Go to the source code of this file.

-

Detailed Description

-

Contains conversion related functions of BigInt.

-
- - - - diff --git a/docs/html/conversion_8hpp_source.html b/docs/html/conversion_8hpp_source.html deleted file mode 100644 index c52b5da..0000000 --- a/docs/html/conversion_8hpp_source.html +++ /dev/null @@ -1,90 +0,0 @@ - - - - - - - -/Users/Mohsin/Repos/BigInt/include/functions/conversion.hpp Source File - - - - - - - - - - -
-
- - - - - - - -
-
Big Integer library for C++
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
conversion.hpp
-
-
-Go to the documentation of this file.
1 
7 #ifndef BIG_INT_CONVERSION_FUNCTIONS_HPP
8 #define BIG_INT_CONVERSION_FUNCTIONS_HPP
9 
10 
11 
20 std::string BigInt::to_string() const {
21  // prefix with sign if negative
22  return this->sign == '-' ? "-" + this->value : this->value;
23 }
24 
25 
33 int BigInt::to_int() const {
34  return std::stoi(this->to_string());
35 }
36 
37 
45 long BigInt::to_long() const {
46  return std::stol(this->to_string());
47 }
48 
49 
57 long long BigInt::to_long_long() const {
58  return std::stoll(this->to_string());
59 }
60 
61 #endif // BIG_INT_CONVERSION_FUNCTIONS_HPP
long to_long() const
Converts BigInt into long
Definition: conversion.hpp:45
-
long long to_long_long() const
Converts BigInt into long long
Definition: conversion.hpp:57
-
std::string to_string() const
Converts BigInt into an std::string representation.
Definition: conversion.hpp:20
-
int to_int() const
Converts BigInt into int
Definition: conversion.hpp:33
-
- - - - diff --git a/docs/html/customdoxygen.css b/docs/html/customdoxygen.css deleted file mode 100644 index 0d4f36d..0000000 --- a/docs/html/customdoxygen.css +++ /dev/null @@ -1,371 +0,0 @@ -h1, .h1, h2, .h2, h3, .h3{ - font-weight: 200 !important; -} - -#navrow1, #navrow2, #navrow3, #navrow4, #navrow5{ - border-bottom: 1px solid #EEEEEE; -} - -.adjust-right { -margin-left: 30px !important; -font-size: 1.15em !important; -} -.navbar{ - border: 0px solid #222 !important; -} -table{ - white-space:pre-wrap !important; -} -/* - =========================== - */ - - -/* Sticky footer styles --------------------------------------------------- */ -html, -body { - height: 100%; - /* The html and body elements cannot have any padding or margin. */ -} - -/* Wrapper for page content to push down footer */ -#wrap { - min-height: 100%; - height: auto; - /* Negative indent footer by its height */ - margin: 0 auto -60px; - /* Pad bottom by footer height */ - padding: 0 0 60px; -} - -/* Set the fixed height of the footer here */ -#footer { - font-size: 0.9em; - padding: 8px 0px; - background-color: #f5f5f5; -} - -.footer-row { - line-height: 44px; -} - -#footer > .container { - padding-left: 15px; - padding-right: 15px; -} - -.footer-follow-icon { - margin-left: 3px; - text-decoration: none !important; -} - -.footer-follow-icon img { - width: 20px; -} - -.footer-link { - padding-top: 5px; - display: inline-block; - color: #999999; - text-decoration: none; -} - -.footer-copyright { - text-align: center; -} - - -@media (min-width: 992px) { - .footer-row { - text-align: left; - } - - .footer-icons { - text-align: right; - } -} -@media (max-width: 991px) { - .footer-row { - text-align: center; - } - - .footer-icons { - text-align: center; - } -} - -/* DOXYGEN Code Styles ------------------------------------ */ - - -a.qindex { - font-weight: bold; -} - -a.qindexHL { - font-weight: bold; - background-color: #9CAFD4; - color: #ffffff; - border: 1px double #869DCA; -} - -.contents a.qindexHL:visited { - color: #ffffff; -} - -a.code, a.code:visited, a.line, a.line:visited { - color: #4665A2; -} - -a.codeRef, a.codeRef:visited, a.lineRef, a.lineRef:visited { - color: #4665A2; -} - -/* @end */ - -dl.el { - margin-left: -1cm; -} - -pre.fragment { - border: 1px solid #C4CFE5; - background-color: #FBFCFD; - padding: 4px 6px; - margin: 4px 8px 4px 2px; - overflow: auto; - word-wrap: break-word; - font-size: 9pt; - line-height: 125%; - font-family: monospace, fixed; - font-size: 105%; -} - -div.fragment { - padding: 4px 6px; - margin: 4px 8px 4px 2px; - border: 1px solid #C4CFE5; -} - -div.line { - font-family: Consolas, "Liberation Mono", Menlo, Courier, monospace; - font-size: 12px; - min-height: 13px; - line-height: 1.0; - text-wrap: unrestricted; - white-space: -moz-pre-wrap; /* Moz */ - white-space: -pre-wrap; /* Opera 4-6 */ - white-space: -o-pre-wrap; /* Opera 7 */ - white-space: pre-wrap; /* CSS3 */ - word-wrap: normal; /* IE 5.5+ */ - text-indent: -53px; - padding-left: 53px; - padding-bottom: 0px; - margin: 0px; - -webkit-transition-property: background-color, box-shadow; - -webkit-transition-duration: 0.5s; - -moz-transition-property: background-color, box-shadow; - -moz-transition-duration: 0.5s; - -ms-transition-property: background-color, box-shadow; - -ms-transition-duration: 0.5s; - -o-transition-property: background-color, box-shadow; - -o-transition-duration: 0.5s; - transition-property: background-color, box-shadow; - transition-duration: 0.5s; -} -div.line:hover{ - background-color: #FBFF00; -} - -div.line.glow { - background-color: cyan; - box-shadow: 0 0 10px cyan; -} - - -span.lineno { - padding-right: 4px; - text-align: right; - color:rgba(0,0,0,0.3); - border-right: 1px solid #EEE; - border-left: 1px solid #EEE; - background-color: #FFF; - white-space: pre; - font-family: Consolas, "Liberation Mono", Menlo, Courier, monospace ; -} -span.lineno a { - background-color: #FAFAFA; - cursor:pointer; -} - -span.lineno a:hover { - background-color: #EFE200; - color: #1e1e1e; -} - -div.groupHeader { - margin-left: 16px; - margin-top: 12px; - font-weight: bold; -} - -div.groupText { - margin-left: 16px; - font-style: italic; -} - -/* @group Code Colorization */ - -span.keyword { - color: #008000 -} - -span.keywordtype { - color: #604020 -} - -span.keywordflow { - color: #e08000 -} - -span.comment { - color: #800000 -} - -span.preprocessor { - color: #806020 -} - -span.stringliteral { - color: #002080 -} - -span.charliteral { - color: #008080 -} - -span.vhdldigit { - color: #ff00ff -} - -span.vhdlchar { - color: #000000 -} - -span.vhdlkeyword { - color: #700070 -} - -span.vhdllogic { - color: #ff0000 -} - -blockquote { - background-color: #F7F8FB; - border-left: 2px solid #9CAFD4; - margin: 0 24px 0 4px; - padding: 0 12px 0 16px; -} - -/*---------------- Search Box */ - -#search-box { - margin: 10px 0px; -} -#search-box .close { - display: none; - position: absolute; - right: 0px; - padding: 6px 12px; - z-index: 5; -} - -/*---------------- Search results window */ - -#search-results-window { - display: none; -} - -iframe#MSearchResults { - width: 100%; - height: 15em; -} - -.SRChildren { - padding-left: 3ex; padding-bottom: .5em -} -.SRPage .SRChildren { - display: none; -} -a.SRScope { - display: block; -} -a.SRSymbol:focus, a.SRSymbol:active, -a.SRScope:focus, a.SRScope:active { - text-decoration: underline; -} -span.SRScope { - padding-left: 4px; -} -.SRResult { - display: none; -} - -/* class and file list */ -.directory .icona, -.directory .arrow { - height: auto; -} -.directory .icona .icon { - height: 16px; -} -.directory .icondoc { - background-position: 0px 0px; - height: 20px; -} -.directory .iconfopen { - background-position: 0px 0px; -} -.directory td.entry { - padding: 7px 8px 6px 8px; -} - -.table > tbody > tr > td.memSeparator { - line-height: 0; - .table-hover; - -} - -.memItemLeft, .memTemplItemLeft { - white-space: normal; -} - -/* enumerations */ -.panel-body thead > tr { - background-color: #e0e0e0; -} - -/* todo lists */ -.todoname, -.todoname a { - font-weight: bold; -} - -/* Class title */ -.summary { - margin-top: 25px; -} -.page-header { - margin: 20px 0px !important; -} -.page-header .title { - display: inline-block; -} -.page-header .pull-right { - margin-top: 0.3em; - margin-left: 0.5em; -} -.page-header .label { - font-size: 50%; -} - diff --git a/docs/html/dir_25195d3308bac8cd1082ed7a447aeb6c.html b/docs/html/dir_25195d3308bac8cd1082ed7a447aeb6c.html deleted file mode 100644 index 74f304f..0000000 --- a/docs/html/dir_25195d3308bac8cd1082ed7a447aeb6c.html +++ /dev/null @@ -1,111 +0,0 @@ - - - - - - - -/Users/Mohsin/Repos/BigInt/include/operators Directory Reference - - - - - - - - - - -
-
- - - - - - - -
-
Big Integer library for C++
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
operators Directory Reference
-
-
- - - - - - - - - - - - - - - - - - - - - - - -

-Files

file  arithmetic_assignment.hpp [code]
 Arithmetic-assignment operators.
 
file  assignment.hpp [code]
 Assignment operators of BigInt.
 
file  binary_arithmetic.hpp [code]
 Binary arithmetic operators for BigInt.
 
file  increment_decrement.hpp [code]
 Increment and decrement operators for BigInt.
 
file  io_stream.hpp [code]
 I/O stream operators for BigInt.
 
file  relational.hpp [code]
 Defining the relational operators for BigInt.
 
file  unary_arithmetic.hpp [code]
 Defining the unary arithmetic operators for BigInt.
 
-
- - - - diff --git a/docs/html/dir_7b9f414af7497816ec826d16b4a48f56.html b/docs/html/dir_7b9f414af7497816ec826d16b4a48f56.html deleted file mode 100644 index e44a3e3..0000000 --- a/docs/html/dir_7b9f414af7497816ec826d16b4a48f56.html +++ /dev/null @@ -1,102 +0,0 @@ - - - - - - - -/Users/Mohsin/Repos/BigInt/include/functions Directory Reference - - - - - - - - - - -
-
- - - - - - - -
-
Big Integer library for C++
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
functions Directory Reference
-
-
- - - - - - - - - - - - - - -

-Files

file  conversion.hpp [code]
 Contains conversion related functions of BigInt.
 
file  math.hpp [code]
 Common math functions that work on BigInt.
 
file  random.hpp [code]
 Random BigInt generating functions.
 
file  utility.hpp [code]
 Contains some utility functions.
 
-
- - - - diff --git a/docs/html/dir_d44c64559bbebec7f509842c48db8b23.html b/docs/html/dir_d44c64559bbebec7f509842c48db8b23.html deleted file mode 100644 index 4128ecc..0000000 --- a/docs/html/dir_d44c64559bbebec7f509842c48db8b23.html +++ /dev/null @@ -1,96 +0,0 @@ - - - - - - - -/Users/Mohsin/Repos/BigInt/include Directory Reference - - - - - - - - - - -
-
- - - - - - - -
-
Big Integer library for C++
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
include Directory Reference
-
-
- - -

-Directories

- - - - -

-Files

file  BigInt.hpp [code]
 Contains class declaration for BigInt.
 
-
- - - - diff --git a/docs/html/dir_ed956669fba08f3cc8fba1616235d2da.html b/docs/html/dir_ed956669fba08f3cc8fba1616235d2da.html deleted file mode 100644 index 70c744e..0000000 --- a/docs/html/dir_ed956669fba08f3cc8fba1616235d2da.html +++ /dev/null @@ -1,93 +0,0 @@ - - - - - - - -/Users/Mohsin/Repos/BigInt/include/constructors Directory Reference - - - - - - - - - - -
-
- - - - - - - -
-
Big Integer library for C++
-
-
- - - - - - - - -
-
- - -
- -
- - -
-
-
-
constructors Directory Reference
-
-
- - - - - -

-Files

file  constructors.hpp [code]
 contains constructors of BigInt
 
-
- - - - diff --git a/docs/html/doc.png b/docs/html/doc.png deleted file mode 100644 index 17edabf..0000000 Binary files a/docs/html/doc.png and /dev/null differ diff --git a/docs/html/doxy-boot.js b/docs/html/doxy-boot.js deleted file mode 100644 index 1622ff7..0000000 --- a/docs/html/doxy-boot.js +++ /dev/null @@ -1,272 +0,0 @@ -$( document ).ready(function() { - - $("div.headertitle").addClass("page-header"); - $("div.title").addClass("h1"); - - $('li > a[href="index.html"] > span').before(" "); - $('li > a[href="modules.html"] > span').before(" "); - $('li > a[href="namespaces.html"] > span').before(" "); - $('li > a[href="annotated.html"] > span').before(" "); - $('li > a[href="classes.html"] > span').before(" "); - $('li > a[href="inherits.html"] > span').before(" "); - $('li > a[href="functions.html"] > span').before(" "); - $('li > a[href="functions_func.html"] > span').before(" "); - $('li > a[href="functions_vars.html"] > span').before(" "); - $('li > a[href="functions_enum.html"] > span').before(" "); - $('li > a[href="functions_eval.html"] > span').before(" "); - $('img[src="ftv2ns.png"]').replaceWith('N '); - $('img[src="ftv2cl.png"]').replaceWith('C '); - - $("ul.tablist").addClass("nav nav-pills nav-justified"); - $("ul.tablist").css("margin-top", "0.5em"); - $("ul.tablist").css("margin-bottom", "0.5em"); - $("li.current").addClass("active"); - $("iframe").attr("scrolling", "yes"); - - $("#nav-path > ul").addClass("breadcrumb"); - - $("table.params").addClass("table"); - $("div.ingroups").wrapInner(""); - $("div.levels").css("margin", "0.5em"); - $("div.levels > span").addClass("btn btn-default btn-xs"); - $("div.levels > span").css("margin-right", "0.25em"); - - $("table.directory").addClass("table table-striped"); - $("div.summary > a").addClass("btn btn-default btn-xs"); - $("table.fieldtable").addClass("table"); - $(".fragment").addClass("well"); - $(".memitem").addClass("panel panel-default"); - $(".memproto").addClass("panel-heading"); - $(".memdoc").addClass("panel-body"); - $("span.mlabel").addClass("label label-info"); - - $("table.memberdecls").addClass("table"); - $("[class^=memitem]").addClass("active"); - - $("div.ah").addClass("btn btn-default"); - $("span.mlabels").addClass("pull-right"); - $("table.mlabels").css("width", "100%") - $("td.mlabels-right").addClass("pull-right"); - - $("div.ttc").addClass("panel panel-primary"); - $("div.ttname").addClass("panel-heading"); - $("div.ttname a").css("color", 'white'); - $("div.ttdef,div.ttdoc,div.ttdeci").addClass("panel-body"); - - $('div.fragment.well div.line:first').css('margin-top', '2px'); - $('div.fragment.well div.line:last').css('margin-bottom', '2px'); - - $('table.doxtable').removeClass('doxtable').addClass('table table-striped table-bordered').each(function(){ - $(this).prepend(''); - $(this).find('tbody > tr:first').prependTo($(this).find('thead')); - - $(this).find('td > span.success').parent().addClass('success'); - $(this).find('td > span.warning').parent().addClass('warning'); - $(this).find('td > span.danger').parent().addClass('danger'); - }); - - - - if($('div.fragment.well div.ttc').length > 0) - { - $('div.fragment.well div.line:first').parent().removeClass('fragment well'); - } - - $('table.memberdecls').find('.memItemRight').each(function(){ - $(this).contents().appendTo($(this).siblings('.memItemLeft')); - $(this).siblings('.memItemLeft').attr('align', 'left'); - }); - - $('table.memberdecls').find('.memTemplItemRight').each(function(){ - $(this).contents().appendTo($(this).siblings('.memTemplItemLeft')); - $(this).siblings('.memTemplItemLeft').attr('align', 'left'); - }); - - function getOriginalWidthOfImg(img_element) { - var t = new Image(); - t.src = (img_element.getAttribute ? img_element.getAttribute("src") : false) || img_element.src; - return t.width; - } - - $('div.dyncontent').find('img').each(function(){ - if(getOriginalWidthOfImg($(this)[0]) > $('#content>div.container').width()) - $(this).css('width', '100%'); - }); - - - /* responsive search box */ - $('#MSearchBox').parent().remove(); - - var nav_container = $('
'); - $('#navrow1').parent().prepend(nav_container); - - var left_nav = $('
'); - for (i = 0; i < 6; i++) { - var navrow = $('#navrow' + i + ' > ul.tablist').detach(); - left_nav.append(navrow); - $('#navrow' + i).remove(); - } - var right_nav = $('
').append('\ - '); - $(nav_container).append(left_nav); - $(nav_container).append(right_nav); - - $('#MSearchSelectWindow .SelectionMark').remove(); - var search_selectors = $('#MSearchSelectWindow .SelectItem'); - for (var i = 0; i < search_selectors.length; i += 1) { - var element_a = $('').text($(search_selectors[i]).text()); - - element_a.click(function(){ - $('#search-box .dropdown-menu li').removeClass('active'); - $(this).parent().addClass('active'); - searchBox.OnSelectItem($('#search-box li a').index(this)); - searchBox.Search(); - return false; - }); - - var element = $('
  • ').append(element_a); - $('#search-box .dropdown-menu').append(element); - } - $('#MSearchSelectWindow').remove(); - - $('#search-box .close').click(function (){ - searchBox.CloseResultsWindow(); - }); - - $('body').append('
    '); - $('body').append('
    '); - $('body').append('
    '); - - searchBox.searchLabel = ''; - searchBox.DOMSearchField = function() { - return document.getElementById("search-field"); - } - searchBox.DOMSearchClose = function(){ - return document.getElementById("search-close"); - } - - - /* search results */ - var results_iframe = $('#MSearchResults').detach(); - $('#MSearchResultsWindow') - .attr('id', 'search-results-window') - .addClass('panel panel-default') - .append( - '
    \ -

    Search Results

    \ -
    \ -
    ' - ); - $('#search-results-window .panel-body').append(results_iframe); - - searchBox.DOMPopupSearchResultsWindow = function() { - return document.getElementById("search-results-window"); - } - - function update_search_results_window() { - $('#search-results-window').removeClass('panel-default panel-success panel-warning panel-danger') - var status = $('#MSearchResults').contents().find('.SRStatus:visible'); - if (status.length > 0) { - switch(status.attr('id')) { - case 'Loading': - case 'Searching': - $('#search-results-window').addClass('panel-warning'); - break; - case 'NoMatches': - $('#search-results-window').addClass('panel-danger'); - break; - default: - $('#search-results-window').addClass('panel-default'); - } - } else { - $('#search-results-window').addClass('panel-success'); - } - } - $('#MSearchResults').load(function() { - $('#MSearchResults').contents().find('link[href="search.css"]').attr('href','../doxygen.css'); - $('#MSearchResults').contents().find('head').append( - ''); - - update_search_results_window(); - - // detect status changes (only for search with external search backend) - var observer = new MutationObserver(function(mutations) { - update_search_results_window(); - }); - var config = { attributes: true}; - - var targets = $('#MSearchResults').contents().find('.SRStatus'); - for (i = 0; i < targets.length; i++) { - observer.observe(targets[i], config); - } - }); - - - /* enumerations */ - $('table.fieldtable').removeClass('fieldtable').addClass('table table-striped table-bordered').each(function(){ - $(this).prepend(''); - $(this).find('tbody > tr:first').prependTo($(this).find('thead')); - - $(this).find('td > span.success').parent().addClass('success'); - $(this).find('td > span.warning').parent().addClass('warning'); - $(this).find('td > span.danger').parent().addClass('danger'); - }); - - /* todo list */ - var todoelements = $('.contents > .textblock > dl.reflist > dt, .contents > .textblock > dl.reflist > dd'); - for (var i = 0; i < todoelements.length; i += 2) { - $('.contents > .textblock').append( - '
    ' - + "
    " + $(todoelements[i]).html() + "
    " - + "
    " + $(todoelements[i+1]).html() + "
    " - + '
    '); - } - $('.contents > .textblock > dl').remove(); - - - $(".memitem").removeClass('memitem'); - $(".memproto").removeClass('memproto'); - $(".memdoc").removeClass('memdoc'); - $("span.mlabel").removeClass('mlabel'); - $("table.memberdecls").removeClass('memberdecls'); - $("[class^=memitem]").removeClass('memitem'); - $("span.mlabels").removeClass('mlabels'); - $("table.mlabels").removeClass('mlabels'); - $("td.mlabels-right").removeClass('mlabels-right'); - $(".navpath").removeClass('navpath'); - $("li.navelem").removeClass('navelem'); - $("a.el").removeClass('el'); - $("div.ah").removeClass('ah'); - $("div.header").removeClass("header"); - - $('.mdescLeft').each(function(){ - if($(this).html()==" ") { - $(this).siblings('.mdescRight').attr('colspan', 2); - $(this).remove(); - } - }); - $('td.memItemLeft').each(function(){ - if($(this).siblings('.memItemRight').html()=="") { - $(this).attr('colspan', 2); - $(this).siblings('.memItemRight').remove(); - } - }); - $('td.memTemplItemLeft').each(function(){ - if($(this).siblings('.memTemplItemRight').html()=="") { - $(this).attr('colspan', 2); - $(this).siblings('.memTemplItemRight').remove(); - } - }); - searchBox.CloseResultsWindow(); -}); - diff --git a/docs/html/doxygen.css b/docs/html/doxygen.css deleted file mode 100644 index 266c8b3..0000000 --- a/docs/html/doxygen.css +++ /dev/null @@ -1,1596 +0,0 @@ -/* The standard CSS for doxygen 1.8.14 */ - -body, table, div, p, dl { - font: 400 14px/22px Roboto,sans-serif; -} - -p.reference, p.definition { - font: 400 14px/22px Roboto,sans-serif; -} - -/* @group Heading Levels */ - -h1.groupheader { - font-size: 150%; -} - -.title { - font: 400 14px/28px Roboto,sans-serif; - font-size: 150%; - font-weight: bold; - margin: 10px 2px; -} - -h2.groupheader { - border-bottom: 1px solid #879ECB; - color: #354C7B; - font-size: 150%; - font-weight: normal; - margin-top: 1.75em; - padding-top: 8px; - padding-bottom: 4px; - width: 100%; -} - -h3.groupheader { - font-size: 100%; -} - -h1, h2, h3, h4, h5, h6 { - -webkit-transition: text-shadow 0.5s linear; - -moz-transition: text-shadow 0.5s linear; - -ms-transition: text-shadow 0.5s linear; - -o-transition: text-shadow 0.5s linear; - transition: text-shadow 0.5s linear; - margin-right: 15px; -} - -h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow { - text-shadow: 0 0 15px cyan; -} - -dt { - font-weight: bold; -} - -div.multicol { - -moz-column-gap: 1em; - -webkit-column-gap: 1em; - -moz-column-count: 3; - -webkit-column-count: 3; -} - -p.startli, p.startdd { - margin-top: 2px; -} - -p.starttd { - margin-top: 0px; -} - -p.endli { - margin-bottom: 0px; -} - -p.enddd { - margin-bottom: 4px; -} - -p.endtd { - margin-bottom: 2px; -} - -/* @end */ - -caption { - font-weight: bold; -} - -span.legend { - font-size: 70%; - text-align: center; -} - -h3.version { - font-size: 90%; - text-align: center; -} - -div.qindex, div.navtab{ - background-color: #EBEFF6; - border: 1px solid #A3B4D7; - text-align: center; -} - -div.qindex, div.navpath { - width: 100%; - line-height: 140%; -} - -div.navtab { - margin-right: 15px; -} - -/* @group Link Styling */ - -a { - color: #3D578C; - font-weight: normal; - text-decoration: none; -} - -.contents a:visited { - color: #4665A2; -} - -a:hover { - text-decoration: underline; -} - -a.qindex { - font-weight: bold; -} - -a.qindexHL { - font-weight: bold; - background-color: #9CAFD4; - color: #ffffff; - border: 1px double #869DCA; -} - -.contents a.qindexHL:visited { - color: #ffffff; -} - -a.el { - font-weight: bold; -} - -a.elRef { -} - -a.code, a.code:visited, a.line, a.line:visited { - color: #4665A2; -} - -a.codeRef, a.codeRef:visited, a.lineRef, a.lineRef:visited { - color: #4665A2; -} - -/* @end */ - -dl.el { - margin-left: -1cm; -} - -pre.fragment { - border: 1px solid #C4CFE5; - background-color: #FBFCFD; - padding: 4px 6px; - margin: 4px 8px 4px 2px; - overflow: auto; - word-wrap: break-word; - font-size: 9pt; - line-height: 125%; - font-family: monospace, fixed; - font-size: 105%; -} - -div.fragment { - padding: 0px; - margin: 4px 8px 4px 2px; - background-color: #FBFCFD; - border: 1px solid #C4CFE5; -} - -div.line { - font-family: monospace, fixed; - font-size: 13px; - min-height: 13px; - line-height: 1.0; - text-wrap: unrestricted; - white-space: -moz-pre-wrap; /* Moz */ - white-space: -pre-wrap; /* Opera 4-6 */ - white-space: -o-pre-wrap; /* Opera 7 */ - white-space: pre-wrap; /* CSS3 */ - word-wrap: break-word; /* IE 5.5+ */ - text-indent: -53px; - padding-left: 53px; - padding-bottom: 0px; - margin: 0px; - -webkit-transition-property: background-color, box-shadow; - -webkit-transition-duration: 0.5s; - -moz-transition-property: background-color, box-shadow; - -moz-transition-duration: 0.5s; - -ms-transition-property: background-color, box-shadow; - -ms-transition-duration: 0.5s; - -o-transition-property: background-color, box-shadow; - -o-transition-duration: 0.5s; - transition-property: background-color, box-shadow; - transition-duration: 0.5s; -} - -div.line:after { - content:"\000A"; - white-space: pre; -} - -div.line.glow { - background-color: cyan; - box-shadow: 0 0 10px cyan; -} - - -span.lineno { - padding-right: 4px; - text-align: right; - border-right: 2px solid #0F0; - background-color: #E8E8E8; - white-space: pre; -} -span.lineno a { - background-color: #D8D8D8; -} - -span.lineno a:hover { - background-color: #C8C8C8; -} - -.lineno { - -webkit-touch-callout: none; - -webkit-user-select: none; - -khtml-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; -} - -div.ah, span.ah { - background-color: black; - font-weight: bold; - color: #ffffff; - margin-bottom: 3px; - margin-top: 3px; - padding: 0.2em; - border: solid thin #333; - border-radius: 0.5em; - -webkit-border-radius: .5em; - -moz-border-radius: .5em; - box-shadow: 2px 2px 3px #999; - -webkit-box-shadow: 2px 2px 3px #999; - -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; - background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444)); - background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000 110%); -} - -div.classindex ul { - list-style: none; - padding-left: 0; -} - -div.classindex span.ai { - display: inline-block; -} - -div.groupHeader { - margin-left: 16px; - margin-top: 12px; - font-weight: bold; -} - -div.groupText { - margin-left: 16px; - font-style: italic; -} - -body { - background-color: white; - color: black; - margin: 0; -} - -div.contents { - margin-top: 10px; - margin-left: 12px; - margin-right: 8px; -} - -td.indexkey { - background-color: #EBEFF6; - font-weight: bold; - border: 1px solid #C4CFE5; - margin: 2px 0px 2px 0; - padding: 2px 10px; - white-space: nowrap; - vertical-align: top; -} - -td.indexvalue { - background-color: #EBEFF6; - border: 1px solid #C4CFE5; - padding: 2px 10px; - margin: 2px 0px; -} - -tr.memlist { - background-color: #EEF1F7; -} - -p.formulaDsp { - text-align: center; -} - -img.formulaDsp { - -} - -img.formulaInl { - vertical-align: middle; -} - -div.center { - text-align: center; - margin-top: 0px; - margin-bottom: 0px; - padding: 0px; -} - -div.center img { - border: 0px; -} - -address.footer { - text-align: right; - padding-right: 12px; -} - -img.footer { - border: 0px; - vertical-align: middle; -} - -/* @group Code Colorization */ - -span.keyword { - color: #008000 -} - -span.keywordtype { - color: #604020 -} - -span.keywordflow { - color: #e08000 -} - -span.comment { - color: #800000 -} - -span.preprocessor { - color: #806020 -} - -span.stringliteral { - color: #002080 -} - -span.charliteral { - color: #008080 -} - -span.vhdldigit { - color: #ff00ff -} - -span.vhdlchar { - color: #000000 -} - -span.vhdlkeyword { - color: #700070 -} - -span.vhdllogic { - color: #ff0000 -} - -blockquote { - background-color: #F7F8FB; - border-left: 2px solid #9CAFD4; - margin: 0 24px 0 4px; - padding: 0 12px 0 16px; -} - -/* @end */ - -/* -.search { - color: #003399; - font-weight: bold; -} - -form.search { - margin-bottom: 0px; - margin-top: 0px; -} - -input.search { - font-size: 75%; - color: #000080; - font-weight: normal; - background-color: #e8eef2; -} -*/ - -td.tiny { - font-size: 75%; -} - -.dirtab { - padding: 4px; - border-collapse: collapse; - border: 1px solid #A3B4D7; -} - -th.dirtab { - background: #EBEFF6; - font-weight: bold; -} - -hr { - height: 0px; - border: none; - border-top: 1px solid #4A6AAA; -} - -hr.footer { - height: 1px; -} - -/* @group Member Descriptions */ - -table.memberdecls { - border-spacing: 0px; - padding: 0px; -} - -.memberdecls td, .fieldtable tr { - -webkit-transition-property: background-color, box-shadow; - -webkit-transition-duration: 0.5s; - -moz-transition-property: background-color, box-shadow; - -moz-transition-duration: 0.5s; - -ms-transition-property: background-color, box-shadow; - -ms-transition-duration: 0.5s; - -o-transition-property: background-color, box-shadow; - -o-transition-duration: 0.5s; - transition-property: background-color, box-shadow; - transition-duration: 0.5s; -} - -.memberdecls td.glow, .fieldtable tr.glow { - background-color: cyan; - box-shadow: 0 0 15px cyan; -} - -.mdescLeft, .mdescRight, -.memItemLeft, .memItemRight, -.memTemplItemLeft, .memTemplItemRight, .memTemplParams { - background-color: #F9FAFC; - border: none; - margin: 4px; - padding: 1px 0 0 8px; -} - -.mdescLeft, .mdescRight { - padding: 0px 8px 4px 8px; - color: #555; -} - -.memSeparator { - border-bottom: 1px solid #DEE4F0; - line-height: 1px; - margin: 0px; - padding: 0px; -} - -.memItemLeft, .memTemplItemLeft { - white-space: nowrap; -} - -.memItemRight { - width: 100%; -} - -.memTemplParams { - color: #4665A2; - white-space: nowrap; - font-size: 80%; -} - -/* @end */ - -/* @group Member Details */ - -/* Styles for detailed member documentation */ - -.memtitle { - padding: 8px; - border-top: 1px solid #A8B8D9; - border-left: 1px solid #A8B8D9; - border-right: 1px solid #A8B8D9; - border-top-right-radius: 4px; - border-top-left-radius: 4px; - margin-bottom: -1px; - background-image: url('nav_f.png'); - background-repeat: repeat-x; - background-color: #E2E8F2; - line-height: 1.25; - font-weight: 300; - float:left; -} - -.permalink -{ - font-size: 65%; - display: inline-block; - vertical-align: middle; -} - -.memtemplate { - font-size: 80%; - color: #4665A2; - font-weight: normal; - margin-left: 9px; -} - -.memnav { - background-color: #EBEFF6; - border: 1px solid #A3B4D7; - text-align: center; - margin: 2px; - margin-right: 15px; - padding: 2px; -} - -.mempage { - width: 100%; -} - -.memitem { - padding: 0; - margin-bottom: 10px; - margin-right: 5px; - -webkit-transition: box-shadow 0.5s linear; - -moz-transition: box-shadow 0.5s linear; - -ms-transition: box-shadow 0.5s linear; - -o-transition: box-shadow 0.5s linear; - transition: box-shadow 0.5s linear; - display: table !important; - width: 100%; -} - -.memitem.glow { - box-shadow: 0 0 15px cyan; -} - -.memname { - font-weight: 400; - margin-left: 6px; -} - -.memname td { - vertical-align: bottom; -} - -.memproto, dl.reflist dt { - border-top: 1px solid #A8B8D9; - border-left: 1px solid #A8B8D9; - border-right: 1px solid #A8B8D9; - padding: 6px 0px 6px 0px; - color: #253555; - font-weight: bold; - text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); - background-color: #DFE5F1; - /* opera specific markup */ - box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); - border-top-right-radius: 4px; - /* firefox specific markup */ - -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; - -moz-border-radius-topright: 4px; - /* webkit specific markup */ - -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); - -webkit-border-top-right-radius: 4px; - -} - -.overload { - font-family: "courier new",courier,monospace; - font-size: 65%; -} - -.memdoc, dl.reflist dd { - border-bottom: 1px solid #A8B8D9; - border-left: 1px solid #A8B8D9; - border-right: 1px solid #A8B8D9; - padding: 6px 10px 2px 10px; - background-color: #FBFCFD; - border-top-width: 0; - background-image:url('nav_g.png'); - background-repeat:repeat-x; - background-color: #FFFFFF; - /* opera specific markup */ - border-bottom-left-radius: 4px; - border-bottom-right-radius: 4px; - box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); - /* firefox specific markup */ - -moz-border-radius-bottomleft: 4px; - -moz-border-radius-bottomright: 4px; - -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; - /* webkit specific markup */ - -webkit-border-bottom-left-radius: 4px; - -webkit-border-bottom-right-radius: 4px; - -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); -} - -dl.reflist dt { - padding: 5px; -} - -dl.reflist dd { - margin: 0px 0px 10px 0px; - padding: 5px; -} - -.paramkey { - text-align: right; -} - -.paramtype { - white-space: nowrap; -} - -.paramname { - color: #602020; - white-space: nowrap; -} -.paramname em { - font-style: normal; -} -.paramname code { - line-height: 14px; -} - -.params, .retval, .exception, .tparams { - margin-left: 0px; - padding-left: 0px; -} - -.params .paramname, .retval .paramname { - font-weight: bold; - vertical-align: top; -} - -.params .paramtype { - font-style: italic; - vertical-align: top; -} - -.params .paramdir { - font-family: "courier new",courier,monospace; - vertical-align: top; -} - -table.mlabels { - border-spacing: 0px; -} - -td.mlabels-left { - width: 100%; - padding: 0px; -} - -td.mlabels-right { - vertical-align: bottom; - padding: 0px; - white-space: nowrap; -} - -span.mlabels { - margin-left: 8px; -} - -span.mlabel { - background-color: #728DC1; - border-top:1px solid #5373B4; - border-left:1px solid #5373B4; - border-right:1px solid #C4CFE5; - border-bottom:1px solid #C4CFE5; - text-shadow: none; - color: white; - margin-right: 4px; - padding: 2px 3px; - border-radius: 3px; - font-size: 7pt; - white-space: nowrap; - vertical-align: middle; -} - - - -/* @end */ - -/* these are for tree view inside a (index) page */ - -div.directory { - margin: 10px 0px; - border-top: 1px solid #9CAFD4; - border-bottom: 1px solid #9CAFD4; - width: 100%; -} - -.directory table { - border-collapse:collapse; -} - -.directory td { - margin: 0px; - padding: 0px; - vertical-align: top; -} - -.directory td.entry { - white-space: nowrap; - padding-right: 6px; - padding-top: 3px; -} - -.directory td.entry a { - outline:none; -} - -.directory td.entry a img { - border: none; -} - -.directory td.desc { - width: 100%; - padding-left: 6px; - padding-right: 6px; - padding-top: 3px; - border-left: 1px solid rgba(0,0,0,0.05); -} - -.directory tr.even { - padding-left: 6px; - background-color: #F7F8FB; -} - -.directory img { - vertical-align: -30%; -} - -.directory .levels { - white-space: nowrap; - width: 100%; - text-align: right; - font-size: 9pt; -} - -.directory .levels span { - cursor: pointer; - padding-left: 2px; - padding-right: 2px; - color: #3D578C; -} - -.arrow { - color: #9CAFD4; - -webkit-user-select: none; - -khtml-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; - cursor: pointer; - font-size: 80%; - display: inline-block; - width: 16px; - height: 22px; -} - -.icon { - font-family: Arial, Helvetica; - font-weight: bold; - font-size: 12px; - height: 14px; - width: 16px; - display: inline-block; - background-color: #728DC1; - color: white; - text-align: center; - border-radius: 4px; - margin-left: 2px; - margin-right: 2px; -} - -.icona { - width: 24px; - height: 22px; - display: inline-block; -} - -.iconfopen { - width: 24px; - height: 18px; - margin-bottom: 4px; - background-image:url('folderopen.png'); - background-position: 0px -4px; - background-repeat: repeat-y; - vertical-align:top; - display: inline-block; -} - -.iconfclosed { - width: 24px; - height: 18px; - margin-bottom: 4px; - background-image:url('folderclosed.png'); - background-position: 0px -4px; - background-repeat: repeat-y; - vertical-align:top; - display: inline-block; -} - -.icondoc { - width: 24px; - height: 18px; - margin-bottom: 4px; - background-image:url('doc.png'); - background-position: 0px -4px; - background-repeat: repeat-y; - vertical-align:top; - display: inline-block; -} - -table.directory { - font: 400 14px Roboto,sans-serif; -} - -/* @end */ - -div.dynheader { - margin-top: 8px; - -webkit-touch-callout: none; - -webkit-user-select: none; - -khtml-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; -} - -address { - font-style: normal; - color: #2A3D61; -} - -table.doxtable caption { - caption-side: top; -} - -table.doxtable { - border-collapse:collapse; - margin-top: 4px; - margin-bottom: 4px; -} - -table.doxtable td, table.doxtable th { - border: 1px solid #2D4068; - padding: 3px 7px 2px; -} - -table.doxtable th { - background-color: #374F7F; - color: #FFFFFF; - font-size: 110%; - padding-bottom: 4px; - padding-top: 5px; -} - -table.fieldtable { - /*width: 100%;*/ - margin-bottom: 10px; - border: 1px solid #A8B8D9; - border-spacing: 0px; - -moz-border-radius: 4px; - -webkit-border-radius: 4px; - border-radius: 4px; - -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; - -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); - box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); -} - -.fieldtable td, .fieldtable th { - padding: 3px 7px 2px; -} - -.fieldtable td.fieldtype, .fieldtable td.fieldname { - white-space: nowrap; - border-right: 1px solid #A8B8D9; - border-bottom: 1px solid #A8B8D9; - vertical-align: top; -} - -.fieldtable td.fieldname { - padding-top: 3px; -} - -.fieldtable td.fielddoc { - border-bottom: 1px solid #A8B8D9; - /*width: 100%;*/ -} - -.fieldtable td.fielddoc p:first-child { - margin-top: 0px; -} - -.fieldtable td.fielddoc p:last-child { - margin-bottom: 2px; -} - -.fieldtable tr:last-child td { - border-bottom: none; -} - -.fieldtable th { - background-image:url('nav_f.png'); - background-repeat:repeat-x; - background-color: #E2E8F2; - font-size: 90%; - color: #253555; - padding-bottom: 4px; - padding-top: 5px; - text-align:left; - font-weight: 400; - -moz-border-radius-topleft: 4px; - -moz-border-radius-topright: 4px; - -webkit-border-top-left-radius: 4px; - -webkit-border-top-right-radius: 4px; - border-top-left-radius: 4px; - border-top-right-radius: 4px; - border-bottom: 1px solid #A8B8D9; -} - - -.tabsearch { - top: 0px; - left: 10px; - height: 36px; - background-image: url('tab_b.png'); - z-index: 101; - overflow: hidden; - font-size: 13px; -} - -.navpath ul -{ - font-size: 11px; - background-image:url('tab_b.png'); - background-repeat:repeat-x; - background-position: 0 -5px; - height:30px; - line-height:30px; - color:#8AA0CC; - border:solid 1px #C2CDE4; - overflow:hidden; - margin:0px; - padding:0px; -} - -.navpath li -{ - list-style-type:none; - float:left; - padding-left:10px; - padding-right:15px; - background-image:url('bc_s.png'); - background-repeat:no-repeat; - background-position:right; - color:#364D7C; -} - -.navpath li.navelem a -{ - height:32px; - display:block; - text-decoration: none; - outline: none; - color: #283A5D; - font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif; - text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); - text-decoration: none; -} - -.navpath li.navelem a:hover -{ - color:#6884BD; -} - -.navpath li.footer -{ - list-style-type:none; - float:right; - padding-left:10px; - padding-right:15px; - background-image:none; - background-repeat:no-repeat; - background-position:right; - color:#364D7C; - font-size: 8pt; -} - - -div.summary -{ - float: right; - font-size: 8pt; - padding-right: 5px; - width: 50%; - text-align: right; -} - -div.summary a -{ - white-space: nowrap; -} - -table.classindex -{ - margin: 10px; - white-space: nowrap; - margin-left: 3%; - margin-right: 3%; - width: 94%; - border: 0; - border-spacing: 0; - padding: 0; -} - -div.ingroups -{ - font-size: 8pt; - width: 50%; - text-align: left; -} - -div.ingroups a -{ - white-space: nowrap; -} - -div.header -{ - background-image:url('nav_h.png'); - background-repeat:repeat-x; - background-color: #F9FAFC; - margin: 0px; - border-bottom: 1px solid #C4CFE5; -} - -div.headertitle -{ - padding: 5px 5px 5px 10px; -} - -dl -{ - padding: 0 0 0 10px; -} - -/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug */ -dl.section -{ - margin-left: 0px; - padding-left: 0px; -} - -dl.note -{ - margin-left:-7px; - padding-left: 3px; - border-left:4px solid; - border-color: #D0C000; -} - -dl.warning, dl.attention -{ - margin-left:-7px; - padding-left: 3px; - border-left:4px solid; - border-color: #FF0000; -} - -dl.pre, dl.post, dl.invariant -{ - margin-left:-7px; - padding-left: 3px; - border-left:4px solid; - border-color: #00D000; -} - -dl.deprecated -{ - margin-left:-7px; - padding-left: 3px; - border-left:4px solid; - border-color: #505050; -} - -dl.todo -{ - margin-left:-7px; - padding-left: 3px; - border-left:4px solid; - border-color: #00C0E0; -} - -dl.test -{ - margin-left:-7px; - padding-left: 3px; - border-left:4px solid; - border-color: #3030E0; -} - -dl.bug -{ - margin-left:-7px; - padding-left: 3px; - border-left:4px solid; - border-color: #C08050; -} - -dl.section dd { - margin-bottom: 6px; -} - - -#projectlogo -{ - text-align: center; - vertical-align: bottom; - border-collapse: separate; -} - -#projectlogo img -{ - border: 0px none; -} - -#projectalign -{ - vertical-align: middle; -} - -#projectname -{ - font: 300% Tahoma, Arial,sans-serif; - margin: 0px; - padding: 2px 0px; -} - -#projectbrief -{ - font: 120% Tahoma, Arial,sans-serif; - margin: 0px; - padding: 0px; -} - -#projectnumber -{ - font: 50% Tahoma, Arial,sans-serif; - margin: 0px; - padding: 0px; -} - -#titlearea -{ - padding: 0px; - margin: 0px; - width: 100%; - border-bottom: 1px solid #5373B4; -} - -.image -{ - text-align: center; -} - -.dotgraph -{ - text-align: center; -} - -.mscgraph -{ - text-align: center; -} - -.plantumlgraph -{ - text-align: center; -} - -.diagraph -{ - text-align: center; -} - -.caption -{ - font-weight: bold; -} - -div.zoom -{ - border: 1px solid #90A5CE; -} - -dl.citelist { - margin-bottom:50px; -} - -dl.citelist dt { - color:#334975; - float:left; - font-weight:bold; - margin-right:10px; - padding:5px; -} - -dl.citelist dd { - margin:2px 0; - padding:5px 0; -} - -div.toc { - padding: 14px 25px; - background-color: #F4F6FA; - border: 1px solid #D8DFEE; - border-radius: 7px 7px 7px 7px; - float: right; - height: auto; - margin: 0 8px 10px 10px; - width: 200px; -} - -div.toc li { - background: url("bdwn.png") no-repeat scroll 0 5px transparent; - font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif; - margin-top: 5px; - padding-left: 10px; - padding-top: 2px; -} - -div.toc h3 { - font: bold 12px/1.2 Arial,FreeSans,sans-serif; - color: #4665A2; - border-bottom: 0 none; - margin: 0; -} - -div.toc ul { - list-style: none outside none; - border: medium none; - padding: 0px; -} - -div.toc li.level1 { - margin-left: 0px; -} - -div.toc li.level2 { - margin-left: 15px; -} - -div.toc li.level3 { - margin-left: 30px; -} - -div.toc li.level4 { - margin-left: 45px; -} - -.inherit_header { - font-weight: bold; - color: gray; - cursor: pointer; - -webkit-touch-callout: none; - -webkit-user-select: none; - -khtml-user-select: none; - -moz-user-select: none; - -ms-user-select: none; - user-select: none; -} - -.inherit_header td { - padding: 6px 0px 2px 5px; -} - -.inherit { - display: none; -} - -tr.heading h2 { - margin-top: 12px; - margin-bottom: 4px; -} - -/* tooltip related style info */ - -.ttc { - position: absolute; - display: none; -} - -#powerTip { - cursor: default; - white-space: nowrap; - background-color: white; - border: 1px solid gray; - border-radius: 4px 4px 4px 4px; - box-shadow: 1px 1px 7px gray; - display: none; - font-size: smaller; - max-width: 80%; - opacity: 0.9; - padding: 1ex 1em 1em; - position: absolute; - z-index: 2147483647; -} - -#powerTip div.ttdoc { - color: grey; - font-style: italic; -} - -#powerTip div.ttname a { - font-weight: bold; -} - -#powerTip div.ttname { - font-weight: bold; -} - -#powerTip div.ttdeci { - color: #006318; -} - -#powerTip div { - margin: 0px; - padding: 0px; - font: 12px/16px Roboto,sans-serif; -} - -#powerTip:before, #powerTip:after { - content: ""; - position: absolute; - margin: 0px; -} - -#powerTip.n:after, #powerTip.n:before, -#powerTip.s:after, #powerTip.s:before, -#powerTip.w:after, #powerTip.w:before, -#powerTip.e:after, #powerTip.e:before, -#powerTip.ne:after, #powerTip.ne:before, -#powerTip.se:after, #powerTip.se:before, -#powerTip.nw:after, #powerTip.nw:before, -#powerTip.sw:after, #powerTip.sw:before { - border: solid transparent; - content: " "; - height: 0; - width: 0; - position: absolute; -} - -#powerTip.n:after, #powerTip.s:after, -#powerTip.w:after, #powerTip.e:after, -#powerTip.nw:after, #powerTip.ne:after, -#powerTip.sw:after, #powerTip.se:after { - border-color: rgba(255, 255, 255, 0); -} - -#powerTip.n:before, #powerTip.s:before, -#powerTip.w:before, #powerTip.e:before, -#powerTip.nw:before, #powerTip.ne:before, -#powerTip.sw:before, #powerTip.se:before { - border-color: rgba(128, 128, 128, 0); -} - -#powerTip.n:after, #powerTip.n:before, -#powerTip.ne:after, #powerTip.ne:before, -#powerTip.nw:after, #powerTip.nw:before { - top: 100%; -} - -#powerTip.n:after, #powerTip.ne:after, #powerTip.nw:after { - border-top-color: #ffffff; - border-width: 10px; - margin: 0px -10px; -} -#powerTip.n:before { - border-top-color: #808080; - border-width: 11px; - margin: 0px -11px; -} -#powerTip.n:after, #powerTip.n:before { - left: 50%; -} - -#powerTip.nw:after, #powerTip.nw:before { - right: 14px; -} - -#powerTip.ne:after, #powerTip.ne:before { - left: 14px; -} - -#powerTip.s:after, #powerTip.s:before, -#powerTip.se:after, #powerTip.se:before, -#powerTip.sw:after, #powerTip.sw:before { - bottom: 100%; -} - -#powerTip.s:after, #powerTip.se:after, #powerTip.sw:after { - border-bottom-color: #ffffff; - border-width: 10px; - margin: 0px -10px; -} - -#powerTip.s:before, #powerTip.se:before, #powerTip.sw:before { - border-bottom-color: #808080; - border-width: 11px; - margin: 0px -11px; -} - -#powerTip.s:after, #powerTip.s:before { - left: 50%; -} - -#powerTip.sw:after, #powerTip.sw:before { - right: 14px; -} - -#powerTip.se:after, #powerTip.se:before { - left: 14px; -} - -#powerTip.e:after, #powerTip.e:before { - left: 100%; -} -#powerTip.e:after { - border-left-color: #ffffff; - border-width: 10px; - top: 50%; - margin-top: -10px; -} -#powerTip.e:before { - border-left-color: #808080; - border-width: 11px; - top: 50%; - margin-top: -11px; -} - -#powerTip.w:after, #powerTip.w:before { - right: 100%; -} -#powerTip.w:after { - border-right-color: #ffffff; - border-width: 10px; - top: 50%; - margin-top: -10px; -} -#powerTip.w:before { - border-right-color: #808080; - border-width: 11px; - top: 50%; - margin-top: -11px; -} - -@media print -{ - #top { display: none; } - #side-nav { display: none; } - #nav-path { display: none; } - body { overflow:visible; } - h1, h2, h3, h4, h5, h6 { page-break-after: avoid; } - .summary { display: none; } - .memitem { page-break-inside: avoid; } - #doc-content - { - margin-left:0 !important; - height:auto !important; - width:auto !important; - overflow:inherit; - display:inline; - } -} - -/* @group Markdown */ - -/* -table.markdownTable { - border-collapse:collapse; - margin-top: 4px; - margin-bottom: 4px; -} - -table.markdownTable td, table.markdownTable th { - border: 1px solid #2D4068; - padding: 3px 7px 2px; -} - -table.markdownTableHead tr { -} - -table.markdownTableBodyLeft td, table.markdownTable th { - border: 1px solid #2D4068; - padding: 3px 7px 2px; -} - -th.markdownTableHeadLeft th.markdownTableHeadRight th.markdownTableHeadCenter th.markdownTableHeadNone { - background-color: #374F7F; - color: #FFFFFF; - font-size: 110%; - padding-bottom: 4px; - padding-top: 5px; -} - -th.markdownTableHeadLeft { - text-align: left -} - -th.markdownTableHeadRight { - text-align: right -} - -th.markdownTableHeadCenter { - text-align: center -} -*/ - -table.markdownTable { - border-collapse:collapse; - margin-top: 4px; - margin-bottom: 4px; -} - -table.markdownTable td, table.markdownTable th { - border: 1px solid #2D4068; - padding: 3px 7px 2px; -} - -table.markdownTable tr { -} - -th.markdownTableHeadLeft, th.markdownTableHeadRight, th.markdownTableHeadCenter, th.markdownTableHeadNone { - background-color: #374F7F; - color: #FFFFFF; - font-size: 110%; - padding-bottom: 4px; - padding-top: 5px; -} - -th.markdownTableHeadLeft, td.markdownTableBodyLeft { - text-align: left -} - -th.markdownTableHeadRight, td.markdownTableBodyRight { - text-align: right -} - -th.markdownTableHeadCenter, td.markdownTableBodyCenter { - text-align: center -} - - -/* @end */ diff --git a/docs/html/doxygen.png b/docs/html/doxygen.png deleted file mode 100644 index 3ff17d8..0000000 Binary files a/docs/html/doxygen.png and /dev/null differ diff --git a/docs/html/dynsections.js b/docs/html/dynsections.js deleted file mode 100644 index c1ce122..0000000 --- a/docs/html/dynsections.js +++ /dev/null @@ -1,120 +0,0 @@ -/* - @licstart The following is the entire license notice for the - JavaScript code in this file. - - Copyright (C) 1997-2017 by Dimitri van Heesch - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this program; if not, write to the Free Software Foundation, Inc., - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - - @licend The above is the entire license notice - for the JavaScript code in this file - */ -function toggleVisibility(linkObj) -{ - var base = $(linkObj).attr('id'); - var summary = $('#'+base+'-summary'); - var content = $('#'+base+'-content'); - var trigger = $('#'+base+'-trigger'); - var src=$(trigger).attr('src'); - if (content.is(':visible')===true) { - content.hide(); - summary.show(); - $(linkObj).addClass('closed').removeClass('opened'); - $(trigger).attr('src',src.substring(0,src.length-8)+'closed.png'); - } else { - content.show(); - summary.hide(); - $(linkObj).removeClass('closed').addClass('opened'); - $(trigger).attr('src',src.substring(0,src.length-10)+'open.png'); - } - return false; -} - -function updateStripes() -{ - $('table.directory tr'). - removeClass('even').filter(':visible:even').addClass('even'); -} - -function toggleLevel(level) -{ - $('table.directory tr').each(function() { - var l = this.id.split('_').length-1; - var i = $('#img'+this.id.substring(3)); - var a = $('#arr'+this.id.substring(3)); - if (l - - - - - - -File List - - - - - - - - - - -
    -
    - - - - - - - -
    -
    Big Integer library for C++
    -
    -
    - - - - - - - -
    - -
    -
    - - -
    - -
    - -
    -
    -
    File List
    -
    -
    -
    Here is a list of all documented files with brief descriptions:
    -
    [detail level 123]
    - - - - - - - - - - - - - - - - - -
      include
      constructors
     constructors.hppConstructors of BigInt
      functions
     conversion.hppContains conversion related functions of BigInt
     math.hppCommon math functions that work on BigInt
     random.hppRandom BigInt generating functions
     utility.hppContains some utility functions
      operators
     arithmetic_assignment.hppArithmetic-assignment operators
     assignment.hppAssignment operators of BigInt
     binary_arithmetic.hppBinary arithmetic operators for BigInt
     increment_decrement.hppIncrement and decrement operators for BigInt
     io_stream.hppI/O stream operators for BigInt
     relational.hppDefining the relational operators for BigInt
     unary_arithmetic.hppDefining the unary arithmetic operators for BigInt
     BigInt.hppContains class declaration for BigInt
    -
    -
    - - - - diff --git a/docs/html/folderclosed.png b/docs/html/folderclosed.png deleted file mode 100644 index bb8ab35..0000000 Binary files a/docs/html/folderclosed.png and /dev/null differ diff --git a/docs/html/folderopen.png b/docs/html/folderopen.png deleted file mode 100644 index d6c7f67..0000000 Binary files a/docs/html/folderopen.png and /dev/null differ diff --git a/docs/html/functions.html b/docs/html/functions.html deleted file mode 100644 index ca88ff3..0000000 --- a/docs/html/functions.html +++ /dev/null @@ -1,178 +0,0 @@ - - - - - - - -Class Members - - - - - - - - - - -
    -
    - - - - - - - -
    -
    Big Integer library for C++
    -
    -
    - - - - - - - -
    - -
    -
    - - -
    - -
    - -
    -
    Here is a list of all documented class members with links to the class documentation for each member:
    - -

    - b -

    - - -

    - d -

    - - -

    - o -

    - - -

    - t -

    -
    - - - - diff --git a/docs/html/functions_func.html b/docs/html/functions_func.html deleted file mode 100644 index 0283085..0000000 --- a/docs/html/functions_func.html +++ /dev/null @@ -1,169 +0,0 @@ - - - - - - - -Class Members - Functions - - - - - - - - - - -
    -
    - - - - - - - -
    -
    Big Integer library for C++
    -
    -
    - - - - - - - -
    - -
    -
    - - -
    - -
    - -
    -  - -

    - b -

    - - -

    - d -

    - - -

    - o -

    - - -

    - t -

    -
    - - - - diff --git a/docs/html/functions_rela.html b/docs/html/functions_rela.html deleted file mode 100644 index 09d6c8a..0000000 --- a/docs/html/functions_rela.html +++ /dev/null @@ -1,89 +0,0 @@ - - - - - - - -Class Members - Related Functions - - - - - - - - - - -
    -
    - - - - - - - -
    -
    Big Integer library for C++
    -
    -
    - - - - - - - -
    - -
    -
    - - -
    - -
    - -
    -
    - - - - diff --git a/docs/html/globals.html b/docs/html/globals.html deleted file mode 100644 index ed2d067..0000000 --- a/docs/html/globals.html +++ /dev/null @@ -1,202 +0,0 @@ - - - - - - - -File Members - - - - - - - - - - -
    -
    - - - - - - - -
    -
    Big Integer library for C++
    -
    -
    - - - - - - - -
    - -
    -
    - - -
    - -
    - -
    -
    Here is a list of all documented file members with links to the documentation:
    - -

    - a -

    - - -

    - b -

    - - -

    - f -

    - - -

    - g -

    - - -

    - i -

    - - -

    - l -

    - - -

    - m -

    - - -

    - o -

    - - -

    - p -

    - - -

    - s -

    -
    - - - - diff --git a/docs/html/globals_func.html b/docs/html/globals_func.html deleted file mode 100644 index f3039f0..0000000 --- a/docs/html/globals_func.html +++ /dev/null @@ -1,188 +0,0 @@ - - - - - - - -File Members - - - - - - - - - - -
    -
    - - - - - - - -
    -
    Big Integer library for C++
    -
    -
    - - - - - - - -
    - -
    -
    - - -
    - -
    - -
    -  - -

    - a -

    - - -

    - b -

    - - -

    - g -

    - - -

    - i -

    - - -

    - l -

    - - -

    - o -

    - - -

    - p -

    - - -

    - s -

    -
    - - - - diff --git a/docs/html/globals_vars.html b/docs/html/globals_vars.html deleted file mode 100644 index b1ae0b6..0000000 --- a/docs/html/globals_vars.html +++ /dev/null @@ -1,86 +0,0 @@ - - - - - - - -File Members - - - - - - - - - - -
    -
    - - - - - - - -
    -
    Big Integer library for C++
    -
    -
    - - - - - - - -
    - -
    -
    - - -
    - -
    - -
    -
    - - - - diff --git a/docs/html/increment__decrement_8hpp.html b/docs/html/increment__decrement_8hpp.html deleted file mode 100644 index 01ce51b..0000000 --- a/docs/html/increment__decrement_8hpp.html +++ /dev/null @@ -1,98 +0,0 @@ - - - - - - - -/Users/Mohsin/Repos/BigInt/include/operators/increment_decrement.hpp File Reference - - - - - - - - - - -
    -
    - - - - - - - -
    -
    Big Integer library for C++
    -
    -
    - - - - - - - - -
    -
    - - -
    - -
    - - -
    -
    -
    -
    increment_decrement.hpp File Reference
    -
    -
    - -

    Increment and decrement operators for BigInt. -More...

    - -

    Go to the source code of this file.

    -

    Detailed Description

    -

    Increment and decrement operators for BigInt.

    -
    - - - - diff --git a/docs/html/increment__decrement_8hpp_source.html b/docs/html/increment__decrement_8hpp_source.html deleted file mode 100644 index 2a0514c..0000000 --- a/docs/html/increment__decrement_8hpp_source.html +++ /dev/null @@ -1,94 +0,0 @@ - - - - - - - -/Users/Mohsin/Repos/BigInt/include/operators/increment_decrement.hpp Source File - - - - - - - - - - -
    -
    - - - - - - - -
    -
    Big Integer library for C++
    -
    -
    - - - - - - - - -
    -
    - - -
    - -
    - - -
    -
    -
    -
    increment_decrement.hpp
    -
    -
    -Go to the documentation of this file.
    1 
    7 #ifndef BIG_INT_INCREMENT_DECREMENT_OPERATORS_HPP
    8 #define BIG_INT_INCREMENT_DECREMENT_OPERATORS_HPP
    9 
    10 #include "BigInt.hpp"
    12 #include "operators/assignment.hpp"
    15 
    16 
    21  *this += 1;
    22 
    23  return *this;
    24 }
    25 
    26 
    31  *this -= 1;
    32 
    33  return *this;
    34 }
    35 
    36 
    41  BigInt temp = *this;
    42  *this += 1;
    43 
    44  return temp;
    45 }
    46 
    47 
    52  BigInt temp = *this;
    53  *this -= 1;
    54 
    55  return temp;
    56 }
    57 
    58 #endif // BIG_INT_INCREMENT_DECREMENT_OPERATORS_HPP
    Assignment operators of BigInt.
    -
    BigInt & operator--()
    Pre-decrements the BigInt by 1.
    Definition: increment_decrement.hpp:30
    -
    Class that contains an arbitrarily sized integer.
    Definition: BigInt.hpp:15
    -
    Arithmetic-assignment operators.
    -
    contains constructors of BigInt
    -
    Binary arithmetic operators for BigInt.
    -
    Contains class declaration for BigInt.
    -
    BigInt & operator++()
    Pre-increments the BigInt by 1.
    Definition: increment_decrement.hpp:20
    -
    - - - - diff --git a/docs/html/index.html b/docs/html/index.html deleted file mode 100644 index 8bf514a..0000000 --- a/docs/html/index.html +++ /dev/null @@ -1,78 +0,0 @@ - - - - - - - -Main Page - - - - - - - - - - -
    -
    - - - - - - - -
    -
    Big Integer library for C++
    -
    -
    - - - - - - - -
    - -
    -
    - - -
    - -
    - -
    -
    - - - - diff --git a/docs/html/io__stream_8hpp.html b/docs/html/io__stream_8hpp.html deleted file mode 100644 index 7a65d7d..0000000 --- a/docs/html/io__stream_8hpp.html +++ /dev/null @@ -1,110 +0,0 @@ - - - - - - - -/Users/Mohsin/Repos/BigInt/include/operators/io_stream.hpp File Reference - - - - - - - - - - -
    -
    - - - - - - - -
    -
    Big Integer library for C++
    -
    -
    - - - - - - - - -
    -
    - - -
    - -
    - - -
    -
    - -
    -
    io_stream.hpp File Reference
    -
    -
    - -

    I/O stream operators for BigInt. -More...

    - -

    Go to the source code of this file.

    - - - - - - - - -

    -Functions

    -std::istream & operator>> (std::istream &in, BigInt &num)
     Get BigInt from the input stream.
     
    -std::ostream & operator<< (std::ostream &out, const BigInt &num)
     Put BigInt into the output stream.
     
    -

    Detailed Description

    -

    I/O stream operators for BigInt.

    -
    - - - - diff --git a/docs/html/io__stream_8hpp_source.html b/docs/html/io__stream_8hpp_source.html deleted file mode 100644 index 4c6bc33..0000000 --- a/docs/html/io__stream_8hpp_source.html +++ /dev/null @@ -1,92 +0,0 @@ - - - - - - - -/Users/Mohsin/Repos/BigInt/include/operators/io_stream.hpp Source File - - - - - - - - - - -
    -
    - - - - - - - -
    -
    Big Integer library for C++
    -
    -
    - - - - - - - - -
    -
    - - -
    - -
    - - -
    -
    -
    -
    io_stream.hpp
    -
    -
    -Go to the documentation of this file.
    1 
    7 #ifndef BIG_INT_IO_STREAM_OPERATORS_HPP
    8 #define BIG_INT_IO_STREAM_OPERATORS_HPP
    9 
    10 #include "BigInt.hpp"
    12 #include "operators/assignment.hpp"
    13 
    14 
    18 std::istream& operator>>(std::istream& in, BigInt& num) {
    19  std::string input;
    20  in >> input;
    21  num = BigInt(input); // remove sign from value and set sign, if exists
    22 
    23  return in;
    24 }
    25 
    26 
    30 std::ostream& operator<<(std::ostream& out, const BigInt& num) {
    31  if (num.sign == '-')
    32  out << num.sign;
    33  out << num.value;
    34 
    35  return out;
    36 }
    37 
    38 #endif // BIG_INT_IO_STREAM_OPERATORS_HPP
    Assignment operators of BigInt.
    -
    Class that contains an arbitrarily sized integer.
    Definition: BigInt.hpp:15
    -
    contains constructors of BigInt
    -
    std::ostream & operator<<(std::ostream &out, const BigInt &num)
    Put BigInt into the output stream.
    Definition: io_stream.hpp:30
    -
    Contains class declaration for BigInt.
    -
    std::istream & operator>>(std::istream &in, BigInt &num)
    Get BigInt from the input stream.
    Definition: io_stream.hpp:18
    -
    - - - - diff --git a/docs/html/jquery.js b/docs/html/jquery.js deleted file mode 100644 index 2771c74..0000000 --- a/docs/html/jquery.js +++ /dev/null @@ -1,115 +0,0 @@ -/* - @licstart The following is the entire license notice for the - JavaScript code in this file. - - Copyright (C) 1997-2017 by Dimitri van Heesch - - Permission is hereby granted, free of charge, to any person obtaining - a copy of this software and associated documentation files (the - "Software"), to deal in the Software without restriction, including - without limitation the rights to use, copy, modify, merge, publish, - distribute, sublicense, and/or sell copies of the Software, and to - permit persons to whom the Software is furnished to do so, subject to - the following conditions: - - The above copyright notice and this permission notice shall be included - in all copies or substantial portions of the Software. - - THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, - EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF - MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. - IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY - CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, - TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE - SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - - @licend The above is the entire license notice - for the JavaScript code in this file - */ -/*! - * jQuery JavaScript Library v1.7.1 - * http://jquery.com/ - * - * Copyright 2011, John Resig - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * Includes Sizzle.js - * http://sizzlejs.com/ - * Copyright 2011, The Dojo Foundation - * Released under the MIT, BSD, and GPL Licenses. - * - * Date: Mon Nov 21 21:11:03 2011 -0500 - */ -(function(bb,L){var av=bb.document,bu=bb.navigator,bl=bb.location;var b=(function(){var bF=function(b0,b1){return new bF.fn.init(b0,b1,bD)},bU=bb.jQuery,bH=bb.$,bD,bY=/^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,bM=/\S/,bI=/^\s+/,bE=/\s+$/,bA=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,bN=/^[\],:{}\s]*$/,bW=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,bP=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,bJ=/(?:^|:|,)(?:\s*\[)+/g,by=/(webkit)[ \/]([\w.]+)/,bR=/(opera)(?:.*version)?[ \/]([\w.]+)/,bQ=/(msie) ([\w.]+)/,bS=/(mozilla)(?:.*? rv:([\w.]+))?/,bB=/-([a-z]|[0-9])/ig,bZ=/^-ms-/,bT=function(b0,b1){return(b1+"").toUpperCase()},bX=bu.userAgent,bV,bC,e,bL=Object.prototype.toString,bG=Object.prototype.hasOwnProperty,bz=Array.prototype.push,bK=Array.prototype.slice,bO=String.prototype.trim,bv=Array.prototype.indexOf,bx={};bF.fn=bF.prototype={constructor:bF,init:function(b0,b4,b3){var b2,b5,b1,b6;if(!b0){return this}if(b0.nodeType){this.context=this[0]=b0;this.length=1;return this}if(b0==="body"&&!b4&&av.body){this.context=av;this[0]=av.body;this.selector=b0;this.length=1;return this}if(typeof b0==="string"){if(b0.charAt(0)==="<"&&b0.charAt(b0.length-1)===">"&&b0.length>=3){b2=[null,b0,null]}else{b2=bY.exec(b0)}if(b2&&(b2[1]||!b4)){if(b2[1]){b4=b4 instanceof bF?b4[0]:b4;b6=(b4?b4.ownerDocument||b4:av);b1=bA.exec(b0);if(b1){if(bF.isPlainObject(b4)){b0=[av.createElement(b1[1])];bF.fn.attr.call(b0,b4,true)}else{b0=[b6.createElement(b1[1])]}}else{b1=bF.buildFragment([b2[1]],[b6]);b0=(b1.cacheable?bF.clone(b1.fragment):b1.fragment).childNodes}return bF.merge(this,b0)}else{b5=av.getElementById(b2[2]);if(b5&&b5.parentNode){if(b5.id!==b2[2]){return b3.find(b0)}this.length=1;this[0]=b5}this.context=av;this.selector=b0;return this}}else{if(!b4||b4.jquery){return(b4||b3).find(b0)}else{return this.constructor(b4).find(b0)}}}else{if(bF.isFunction(b0)){return b3.ready(b0)}}if(b0.selector!==L){this.selector=b0.selector;this.context=b0.context}return bF.makeArray(b0,this)},selector:"",jquery:"1.7.1",length:0,size:function(){return this.length},toArray:function(){return bK.call(this,0)},get:function(b0){return b0==null?this.toArray():(b0<0?this[this.length+b0]:this[b0])},pushStack:function(b1,b3,b0){var b2=this.constructor();if(bF.isArray(b1)){bz.apply(b2,b1)}else{bF.merge(b2,b1)}b2.prevObject=this;b2.context=this.context;if(b3==="find"){b2.selector=this.selector+(this.selector?" ":"")+b0}else{if(b3){b2.selector=this.selector+"."+b3+"("+b0+")"}}return b2},each:function(b1,b0){return bF.each(this,b1,b0)},ready:function(b0){bF.bindReady();bC.add(b0);return this},eq:function(b0){b0=+b0;return b0===-1?this.slice(b0):this.slice(b0,b0+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(bK.apply(this,arguments),"slice",bK.call(arguments).join(","))},map:function(b0){return this.pushStack(bF.map(this,function(b2,b1){return b0.call(b2,b1,b2)}))},end:function(){return this.prevObject||this.constructor(null)},push:bz,sort:[].sort,splice:[].splice};bF.fn.init.prototype=bF.fn;bF.extend=bF.fn.extend=function(){var b9,b2,b0,b1,b6,b7,b5=arguments[0]||{},b4=1,b3=arguments.length,b8=false;if(typeof b5==="boolean"){b8=b5;b5=arguments[1]||{};b4=2}if(typeof b5!=="object"&&!bF.isFunction(b5)){b5={}}if(b3===b4){b5=this;--b4}for(;b40){return}bC.fireWith(av,[bF]);if(bF.fn.trigger){bF(av).trigger("ready").off("ready")}}},bindReady:function(){if(bC){return}bC=bF.Callbacks("once memory");if(av.readyState==="complete"){return setTimeout(bF.ready,1)}if(av.addEventListener){av.addEventListener("DOMContentLoaded",e,false);bb.addEventListener("load",bF.ready,false)}else{if(av.attachEvent){av.attachEvent("onreadystatechange",e);bb.attachEvent("onload",bF.ready);var b0=false;try{b0=bb.frameElement==null}catch(b1){}if(av.documentElement.doScroll&&b0){bw()}}}},isFunction:function(b0){return bF.type(b0)==="function"},isArray:Array.isArray||function(b0){return bF.type(b0)==="array"},isWindow:function(b0){return b0&&typeof b0==="object"&&"setInterval" in b0},isNumeric:function(b0){return !isNaN(parseFloat(b0))&&isFinite(b0)},type:function(b0){return b0==null?String(b0):bx[bL.call(b0)]||"object"},isPlainObject:function(b2){if(!b2||bF.type(b2)!=="object"||b2.nodeType||bF.isWindow(b2)){return false}try{if(b2.constructor&&!bG.call(b2,"constructor")&&!bG.call(b2.constructor.prototype,"isPrototypeOf")){return false}}catch(b1){return false}var b0;for(b0 in b2){}return b0===L||bG.call(b2,b0)},isEmptyObject:function(b1){for(var b0 in b1){return false}return true},error:function(b0){throw new Error(b0)},parseJSON:function(b0){if(typeof b0!=="string"||!b0){return null}b0=bF.trim(b0);if(bb.JSON&&bb.JSON.parse){return bb.JSON.parse(b0)}if(bN.test(b0.replace(bW,"@").replace(bP,"]").replace(bJ,""))){return(new Function("return "+b0))()}bF.error("Invalid JSON: "+b0)},parseXML:function(b2){var b0,b1;try{if(bb.DOMParser){b1=new DOMParser();b0=b1.parseFromString(b2,"text/xml")}else{b0=new ActiveXObject("Microsoft.XMLDOM");b0.async="false";b0.loadXML(b2)}}catch(b3){b0=L}if(!b0||!b0.documentElement||b0.getElementsByTagName("parsererror").length){bF.error("Invalid XML: "+b2)}return b0},noop:function(){},globalEval:function(b0){if(b0&&bM.test(b0)){(bb.execScript||function(b1){bb["eval"].call(bb,b1)})(b0)}},camelCase:function(b0){return b0.replace(bZ,"ms-").replace(bB,bT)},nodeName:function(b1,b0){return b1.nodeName&&b1.nodeName.toUpperCase()===b0.toUpperCase()},each:function(b3,b6,b2){var b1,b4=0,b5=b3.length,b0=b5===L||bF.isFunction(b3);if(b2){if(b0){for(b1 in b3){if(b6.apply(b3[b1],b2)===false){break}}}else{for(;b40&&b0[0]&&b0[b1-1])||b1===0||bF.isArray(b0));if(b3){for(;b21?aJ.call(arguments,0):bG;if(!(--bw)){bC.resolveWith(bC,bx)}}}function bz(bF){return function(bG){bB[bF]=arguments.length>1?aJ.call(arguments,0):bG;bC.notifyWith(bE,bB)}}if(e>1){for(;bv
    a";bI=bv.getElementsByTagName("*");bF=bv.getElementsByTagName("a")[0];if(!bI||!bI.length||!bF){return{}}bG=av.createElement("select");bx=bG.appendChild(av.createElement("option"));bE=bv.getElementsByTagName("input")[0];bJ={leadingWhitespace:(bv.firstChild.nodeType===3),tbody:!bv.getElementsByTagName("tbody").length,htmlSerialize:!!bv.getElementsByTagName("link").length,style:/top/.test(bF.getAttribute("style")),hrefNormalized:(bF.getAttribute("href")==="/a"),opacity:/^0.55/.test(bF.style.opacity),cssFloat:!!bF.style.cssFloat,checkOn:(bE.value==="on"),optSelected:bx.selected,getSetAttribute:bv.className!=="t",enctype:!!av.createElement("form").enctype,html5Clone:av.createElement("nav").cloneNode(true).outerHTML!=="<:nav>",submitBubbles:true,changeBubbles:true,focusinBubbles:false,deleteExpando:true,noCloneEvent:true,inlineBlockNeedsLayout:false,shrinkWrapBlocks:false,reliableMarginRight:true};bE.checked=true;bJ.noCloneChecked=bE.cloneNode(true).checked;bG.disabled=true;bJ.optDisabled=!bx.disabled;try{delete bv.test}catch(bC){bJ.deleteExpando=false}if(!bv.addEventListener&&bv.attachEvent&&bv.fireEvent){bv.attachEvent("onclick",function(){bJ.noCloneEvent=false});bv.cloneNode(true).fireEvent("onclick")}bE=av.createElement("input");bE.value="t";bE.setAttribute("type","radio");bJ.radioValue=bE.value==="t";bE.setAttribute("checked","checked");bv.appendChild(bE);bD=av.createDocumentFragment();bD.appendChild(bv.lastChild);bJ.checkClone=bD.cloneNode(true).cloneNode(true).lastChild.checked;bJ.appendChecked=bE.checked;bD.removeChild(bE);bD.appendChild(bv);bv.innerHTML="";if(bb.getComputedStyle){bA=av.createElement("div");bA.style.width="0";bA.style.marginRight="0";bv.style.width="2px";bv.appendChild(bA);bJ.reliableMarginRight=(parseInt((bb.getComputedStyle(bA,null)||{marginRight:0}).marginRight,10)||0)===0}if(bv.attachEvent){for(by in {submit:1,change:1,focusin:1}){bB="on"+by;bw=(bB in bv);if(!bw){bv.setAttribute(bB,"return;");bw=(typeof bv[bB]==="function")}bJ[by+"Bubbles"]=bw}}bD.removeChild(bv);bD=bG=bx=bA=bv=bE=null;b(function(){var bM,bU,bV,bT,bN,bO,bL,bS,bR,e,bP,bQ=av.getElementsByTagName("body")[0];if(!bQ){return}bL=1;bS="position:absolute;top:0;left:0;width:1px;height:1px;margin:0;";bR="visibility:hidden;border:0;";e="style='"+bS+"border:5px solid #000;padding:0;'";bP="
    ";bM=av.createElement("div");bM.style.cssText=bR+"width:0;height:0;position:static;top:0;margin-top:"+bL+"px";bQ.insertBefore(bM,bQ.firstChild);bv=av.createElement("div");bM.appendChild(bv);bv.innerHTML="
    t
    ";bz=bv.getElementsByTagName("td");bw=(bz[0].offsetHeight===0);bz[0].style.display="";bz[1].style.display="none";bJ.reliableHiddenOffsets=bw&&(bz[0].offsetHeight===0);bv.innerHTML="";bv.style.width=bv.style.paddingLeft="1px";b.boxModel=bJ.boxModel=bv.offsetWidth===2;if(typeof bv.style.zoom!=="undefined"){bv.style.display="inline";bv.style.zoom=1;bJ.inlineBlockNeedsLayout=(bv.offsetWidth===2);bv.style.display="";bv.innerHTML="
    ";bJ.shrinkWrapBlocks=(bv.offsetWidth!==2)}bv.style.cssText=bS+bR;bv.innerHTML=bP;bU=bv.firstChild;bV=bU.firstChild;bN=bU.nextSibling.firstChild.firstChild;bO={doesNotAddBorder:(bV.offsetTop!==5),doesAddBorderForTableAndCells:(bN.offsetTop===5)};bV.style.position="fixed";bV.style.top="20px";bO.fixedPosition=(bV.offsetTop===20||bV.offsetTop===15);bV.style.position=bV.style.top="";bU.style.overflow="hidden";bU.style.position="relative";bO.subtractsBorderForOverflowNotVisible=(bV.offsetTop===-5);bO.doesNotIncludeMarginInBodyOffset=(bQ.offsetTop!==bL);bQ.removeChild(bM);bv=bM=null;b.extend(bJ,bO)});return bJ})();var aS=/^(?:\{.*\}|\[.*\])$/,aA=/([A-Z])/g;b.extend({cache:{},uuid:0,expando:"jQuery"+(b.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:true,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:true},hasData:function(e){e=e.nodeType?b.cache[e[b.expando]]:e[b.expando];return !!e&&!S(e)},data:function(bx,bv,bz,by){if(!b.acceptData(bx)){return}var bG,bA,bD,bE=b.expando,bC=typeof bv==="string",bF=bx.nodeType,e=bF?b.cache:bx,bw=bF?bx[bE]:bx[bE]&&bE,bB=bv==="events";if((!bw||!e[bw]||(!bB&&!by&&!e[bw].data))&&bC&&bz===L){return}if(!bw){if(bF){bx[bE]=bw=++b.uuid}else{bw=bE}}if(!e[bw]){e[bw]={};if(!bF){e[bw].toJSON=b.noop}}if(typeof bv==="object"||typeof bv==="function"){if(by){e[bw]=b.extend(e[bw],bv)}else{e[bw].data=b.extend(e[bw].data,bv)}}bG=bA=e[bw];if(!by){if(!bA.data){bA.data={}}bA=bA.data}if(bz!==L){bA[b.camelCase(bv)]=bz}if(bB&&!bA[bv]){return bG.events}if(bC){bD=bA[bv];if(bD==null){bD=bA[b.camelCase(bv)]}}else{bD=bA}return bD},removeData:function(bx,bv,by){if(!b.acceptData(bx)){return}var bB,bA,bz,bC=b.expando,bD=bx.nodeType,e=bD?b.cache:bx,bw=bD?bx[bC]:bC;if(!e[bw]){return}if(bv){bB=by?e[bw]:e[bw].data;if(bB){if(!b.isArray(bv)){if(bv in bB){bv=[bv]}else{bv=b.camelCase(bv);if(bv in bB){bv=[bv]}else{bv=bv.split(" ")}}}for(bA=0,bz=bv.length;bA-1){return true}}return false},val:function(bx){var e,bv,by,bw=this[0];if(!arguments.length){if(bw){e=b.valHooks[bw.nodeName.toLowerCase()]||b.valHooks[bw.type];if(e&&"get" in e&&(bv=e.get(bw,"value"))!==L){return bv}bv=bw.value;return typeof bv==="string"?bv.replace(aU,""):bv==null?"":bv}return}by=b.isFunction(bx);return this.each(function(bA){var bz=b(this),bB;if(this.nodeType!==1){return}if(by){bB=bx.call(this,bA,bz.val())}else{bB=bx}if(bB==null){bB=""}else{if(typeof bB==="number"){bB+=""}else{if(b.isArray(bB)){bB=b.map(bB,function(bC){return bC==null?"":bC+""})}}}e=b.valHooks[this.nodeName.toLowerCase()]||b.valHooks[this.type];if(!e||!("set" in e)||e.set(this,bB,"value")===L){this.value=bB}})}});b.extend({valHooks:{option:{get:function(e){var bv=e.attributes.value;return !bv||bv.specified?e.value:e.text}},select:{get:function(e){var bA,bv,bz,bx,by=e.selectedIndex,bB=[],bC=e.options,bw=e.type==="select-one";if(by<0){return null}bv=bw?by:0;bz=bw?by+1:bC.length;for(;bv=0});if(!e.length){bv.selectedIndex=-1}return e}}},attrFn:{val:true,css:true,html:true,text:true,data:true,width:true,height:true,offset:true},attr:function(bA,bx,bB,bz){var bw,e,by,bv=bA.nodeType;if(!bA||bv===3||bv===8||bv===2){return}if(bz&&bx in b.attrFn){return b(bA)[bx](bB)}if(typeof bA.getAttribute==="undefined"){return b.prop(bA,bx,bB)}by=bv!==1||!b.isXMLDoc(bA);if(by){bx=bx.toLowerCase();e=b.attrHooks[bx]||(ao.test(bx)?aY:be)}if(bB!==L){if(bB===null){b.removeAttr(bA,bx);return}else{if(e&&"set" in e&&by&&(bw=e.set(bA,bB,bx))!==L){return bw}else{bA.setAttribute(bx,""+bB);return bB}}}else{if(e&&"get" in e&&by&&(bw=e.get(bA,bx))!==null){return bw}else{bw=bA.getAttribute(bx);return bw===null?L:bw}}},removeAttr:function(bx,bz){var by,bA,bv,e,bw=0;if(bz&&bx.nodeType===1){bA=bz.toLowerCase().split(af);e=bA.length;for(;bw=0)}}})});var bd=/^(?:textarea|input|select)$/i,n=/^([^\.]*)?(?:\.(.+))?$/,J=/\bhover(\.\S+)?\b/,aO=/^key/,bf=/^(?:mouse|contextmenu)|click/,T=/^(?:focusinfocus|focusoutblur)$/,U=/^(\w*)(?:#([\w\-]+))?(?:\.([\w\-]+))?$/,Y=function(e){var bv=U.exec(e);if(bv){bv[1]=(bv[1]||"").toLowerCase();bv[3]=bv[3]&&new RegExp("(?:^|\\s)"+bv[3]+"(?:\\s|$)")}return bv},j=function(bw,e){var bv=bw.attributes||{};return((!e[1]||bw.nodeName.toLowerCase()===e[1])&&(!e[2]||(bv.id||{}).value===e[2])&&(!e[3]||e[3].test((bv["class"]||{}).value)))},bt=function(e){return b.event.special.hover?e:e.replace(J,"mouseenter$1 mouseleave$1")};b.event={add:function(bx,bC,bJ,bA,by){var bD,bB,bK,bI,bH,bF,e,bG,bv,bz,bw,bE;if(bx.nodeType===3||bx.nodeType===8||!bC||!bJ||!(bD=b._data(bx))){return}if(bJ.handler){bv=bJ;bJ=bv.handler}if(!bJ.guid){bJ.guid=b.guid++}bK=bD.events;if(!bK){bD.events=bK={}}bB=bD.handle;if(!bB){bD.handle=bB=function(bL){return typeof b!=="undefined"&&(!bL||b.event.triggered!==bL.type)?b.event.dispatch.apply(bB.elem,arguments):L};bB.elem=bx}bC=b.trim(bt(bC)).split(" ");for(bI=0;bI=0){bG=bG.slice(0,-1);bw=true}if(bG.indexOf(".")>=0){bx=bG.split(".");bG=bx.shift();bx.sort()}if((!bA||b.event.customEvent[bG])&&!b.event.global[bG]){return}bv=typeof bv==="object"?bv[b.expando]?bv:new b.Event(bG,bv):new b.Event(bG);bv.type=bG;bv.isTrigger=true;bv.exclusive=bw;bv.namespace=bx.join(".");bv.namespace_re=bv.namespace?new RegExp("(^|\\.)"+bx.join("\\.(?:.*\\.)?")+"(\\.|$)"):null;by=bG.indexOf(":")<0?"on"+bG:"";if(!bA){e=b.cache;for(bC in e){if(e[bC].events&&e[bC].events[bG]){b.event.trigger(bv,bD,e[bC].handle.elem,true)}}return}bv.result=L;if(!bv.target){bv.target=bA}bD=bD!=null?b.makeArray(bD):[];bD.unshift(bv);bF=b.event.special[bG]||{};if(bF.trigger&&bF.trigger.apply(bA,bD)===false){return}bB=[[bA,bF.bindType||bG]];if(!bJ&&!bF.noBubble&&!b.isWindow(bA)){bI=bF.delegateType||bG;bH=T.test(bI+bG)?bA:bA.parentNode;bz=null;for(;bH;bH=bH.parentNode){bB.push([bH,bI]);bz=bH}if(bz&&bz===bA.ownerDocument){bB.push([bz.defaultView||bz.parentWindow||bb,bI])}}for(bC=0;bCbA){bH.push({elem:this,matches:bz.slice(bA)})}for(bC=0;bC0?this.on(e,null,bx,bw):this.trigger(e)};if(b.attrFn){b.attrFn[e]=true}if(aO.test(e)){b.event.fixHooks[e]=b.event.keyHooks}if(bf.test(e)){b.event.fixHooks[e]=b.event.mouseHooks}}); -/*! - * Sizzle CSS Selector Engine - * Copyright 2011, The Dojo Foundation - * Released under the MIT, BSD, and GPL Licenses. - * More information: http://sizzlejs.com/ - */ -(function(){var bH=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,bC="sizcache"+(Math.random()+"").replace(".",""),bI=0,bL=Object.prototype.toString,bB=false,bA=true,bK=/\\/g,bO=/\r\n/g,bQ=/\W/;[0,0].sort(function(){bA=false;return 0});var by=function(bV,e,bY,bZ){bY=bY||[];e=e||av;var b1=e;if(e.nodeType!==1&&e.nodeType!==9){return[]}if(!bV||typeof bV!=="string"){return bY}var bS,b3,b6,bR,b2,b5,b4,bX,bU=true,bT=by.isXML(e),bW=[],b0=bV;do{bH.exec("");bS=bH.exec(b0);if(bS){b0=bS[3];bW.push(bS[1]);if(bS[2]){bR=bS[3];break}}}while(bS);if(bW.length>1&&bD.exec(bV)){if(bW.length===2&&bE.relative[bW[0]]){b3=bM(bW[0]+bW[1],e,bZ)}else{b3=bE.relative[bW[0]]?[e]:by(bW.shift(),e);while(bW.length){bV=bW.shift();if(bE.relative[bV]){bV+=bW.shift()}b3=bM(bV,b3,bZ)}}}else{if(!bZ&&bW.length>1&&e.nodeType===9&&!bT&&bE.match.ID.test(bW[0])&&!bE.match.ID.test(bW[bW.length-1])){b2=by.find(bW.shift(),e,bT);e=b2.expr?by.filter(b2.expr,b2.set)[0]:b2.set[0]}if(e){b2=bZ?{expr:bW.pop(),set:bF(bZ)}:by.find(bW.pop(),bW.length===1&&(bW[0]==="~"||bW[0]==="+")&&e.parentNode?e.parentNode:e,bT);b3=b2.expr?by.filter(b2.expr,b2.set):b2.set;if(bW.length>0){b6=bF(b3)}else{bU=false}while(bW.length){b5=bW.pop();b4=b5;if(!bE.relative[b5]){b5=""}else{b4=bW.pop()}if(b4==null){b4=e}bE.relative[b5](b6,b4,bT)}}else{b6=bW=[]}}if(!b6){b6=b3}if(!b6){by.error(b5||bV)}if(bL.call(b6)==="[object Array]"){if(!bU){bY.push.apply(bY,b6)}else{if(e&&e.nodeType===1){for(bX=0;b6[bX]!=null;bX++){if(b6[bX]&&(b6[bX]===true||b6[bX].nodeType===1&&by.contains(e,b6[bX]))){bY.push(b3[bX])}}}else{for(bX=0;b6[bX]!=null;bX++){if(b6[bX]&&b6[bX].nodeType===1){bY.push(b3[bX])}}}}}else{bF(b6,bY)}if(bR){by(bR,b1,bY,bZ);by.uniqueSort(bY)}return bY};by.uniqueSort=function(bR){if(bJ){bB=bA;bR.sort(bJ);if(bB){for(var e=1;e0};by.find=function(bX,e,bY){var bW,bS,bU,bT,bV,bR;if(!bX){return[]}for(bS=0,bU=bE.order.length;bS":function(bW,bR){var bV,bU=typeof bR==="string",bS=0,e=bW.length;if(bU&&!bQ.test(bR)){bR=bR.toLowerCase();for(;bS=0)){if(!bS){e.push(bV)}}else{if(bS){bR[bU]=false}}}}return false},ID:function(e){return e[1].replace(bK,"")},TAG:function(bR,e){return bR[1].replace(bK,"").toLowerCase()},CHILD:function(e){if(e[1]==="nth"){if(!e[2]){by.error(e[0])}e[2]=e[2].replace(/^\+|\s*/g,"");var bR=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(e[2]==="even"&&"2n"||e[2]==="odd"&&"2n+1"||!/\D/.test(e[2])&&"0n+"+e[2]||e[2]);e[2]=(bR[1]+(bR[2]||1))-0;e[3]=bR[3]-0}else{if(e[2]){by.error(e[0])}}e[0]=bI++;return e},ATTR:function(bU,bR,bS,e,bV,bW){var bT=bU[1]=bU[1].replace(bK,"");if(!bW&&bE.attrMap[bT]){bU[1]=bE.attrMap[bT]}bU[4]=(bU[4]||bU[5]||"").replace(bK,"");if(bU[2]==="~="){bU[4]=" "+bU[4]+" "}return bU},PSEUDO:function(bU,bR,bS,e,bV){if(bU[1]==="not"){if((bH.exec(bU[3])||"").length>1||/^\w/.test(bU[3])){bU[3]=by(bU[3],null,null,bR)}else{var bT=by.filter(bU[3],bR,bS,true^bV);if(!bS){e.push.apply(e,bT)}return false}}else{if(bE.match.POS.test(bU[0])||bE.match.CHILD.test(bU[0])){return true}}return bU},POS:function(e){e.unshift(true);return e}},filters:{enabled:function(e){return e.disabled===false&&e.type!=="hidden"},disabled:function(e){return e.disabled===true},checked:function(e){return e.checked===true},selected:function(e){if(e.parentNode){e.parentNode.selectedIndex}return e.selected===true},parent:function(e){return !!e.firstChild},empty:function(e){return !e.firstChild},has:function(bS,bR,e){return !!by(e[3],bS).length},header:function(e){return(/h\d/i).test(e.nodeName)},text:function(bS){var e=bS.getAttribute("type"),bR=bS.type;return bS.nodeName.toLowerCase()==="input"&&"text"===bR&&(e===bR||e===null)},radio:function(e){return e.nodeName.toLowerCase()==="input"&&"radio"===e.type},checkbox:function(e){return e.nodeName.toLowerCase()==="input"&&"checkbox"===e.type},file:function(e){return e.nodeName.toLowerCase()==="input"&&"file"===e.type},password:function(e){return e.nodeName.toLowerCase()==="input"&&"password"===e.type},submit:function(bR){var e=bR.nodeName.toLowerCase();return(e==="input"||e==="button")&&"submit"===bR.type},image:function(e){return e.nodeName.toLowerCase()==="input"&&"image"===e.type},reset:function(bR){var e=bR.nodeName.toLowerCase();return(e==="input"||e==="button")&&"reset"===bR.type},button:function(bR){var e=bR.nodeName.toLowerCase();return e==="input"&&"button"===bR.type||e==="button"},input:function(e){return(/input|select|textarea|button/i).test(e.nodeName)},focus:function(e){return e===e.ownerDocument.activeElement}},setFilters:{first:function(bR,e){return e===0},last:function(bS,bR,e,bT){return bR===bT.length-1},even:function(bR,e){return e%2===0},odd:function(bR,e){return e%2===1},lt:function(bS,bR,e){return bRe[3]-0},nth:function(bS,bR,e){return e[3]-0===bR},eq:function(bS,bR,e){return e[3]-0===bR}},filter:{PSEUDO:function(bS,bX,bW,bY){var e=bX[1],bR=bE.filters[e];if(bR){return bR(bS,bW,bX,bY)}else{if(e==="contains"){return(bS.textContent||bS.innerText||bw([bS])||"").indexOf(bX[3])>=0}else{if(e==="not"){var bT=bX[3];for(var bV=0,bU=bT.length;bV=0)}}},ID:function(bR,e){return bR.nodeType===1&&bR.getAttribute("id")===e},TAG:function(bR,e){return(e==="*"&&bR.nodeType===1)||!!bR.nodeName&&bR.nodeName.toLowerCase()===e},CLASS:function(bR,e){return(" "+(bR.className||bR.getAttribute("class"))+" ").indexOf(e)>-1},ATTR:function(bV,bT){var bS=bT[1],e=by.attr?by.attr(bV,bS):bE.attrHandle[bS]?bE.attrHandle[bS](bV):bV[bS]!=null?bV[bS]:bV.getAttribute(bS),bW=e+"",bU=bT[2],bR=bT[4];return e==null?bU==="!=":!bU&&by.attr?e!=null:bU==="="?bW===bR:bU==="*="?bW.indexOf(bR)>=0:bU==="~="?(" "+bW+" ").indexOf(bR)>=0:!bR?bW&&e!==false:bU==="!="?bW!==bR:bU==="^="?bW.indexOf(bR)===0:bU==="$="?bW.substr(bW.length-bR.length)===bR:bU==="|="?bW===bR||bW.substr(0,bR.length+1)===bR+"-":false},POS:function(bU,bR,bS,bV){var e=bR[2],bT=bE.setFilters[e];if(bT){return bT(bU,bS,bR,bV)}}}};var bD=bE.match.POS,bx=function(bR,e){return"\\"+(e-0+1)};for(var bz in bE.match){bE.match[bz]=new RegExp(bE.match[bz].source+(/(?![^\[]*\])(?![^\(]*\))/.source));bE.leftMatch[bz]=new RegExp(/(^(?:.|\r|\n)*?)/.source+bE.match[bz].source.replace(/\\(\d+)/g,bx))}var bF=function(bR,e){bR=Array.prototype.slice.call(bR,0);if(e){e.push.apply(e,bR);return e}return bR};try{Array.prototype.slice.call(av.documentElement.childNodes,0)[0].nodeType}catch(bP){bF=function(bU,bT){var bS=0,bR=bT||[];if(bL.call(bU)==="[object Array]"){Array.prototype.push.apply(bR,bU)}else{if(typeof bU.length==="number"){for(var e=bU.length;bS";e.insertBefore(bR,e.firstChild);if(av.getElementById(bS)){bE.find.ID=function(bU,bV,bW){if(typeof bV.getElementById!=="undefined"&&!bW){var bT=bV.getElementById(bU[1]);return bT?bT.id===bU[1]||typeof bT.getAttributeNode!=="undefined"&&bT.getAttributeNode("id").nodeValue===bU[1]?[bT]:L:[]}};bE.filter.ID=function(bV,bT){var bU=typeof bV.getAttributeNode!=="undefined"&&bV.getAttributeNode("id");return bV.nodeType===1&&bU&&bU.nodeValue===bT}}e.removeChild(bR);e=bR=null})();(function(){var e=av.createElement("div");e.appendChild(av.createComment(""));if(e.getElementsByTagName("*").length>0){bE.find.TAG=function(bR,bV){var bU=bV.getElementsByTagName(bR[1]);if(bR[1]==="*"){var bT=[];for(var bS=0;bU[bS];bS++){if(bU[bS].nodeType===1){bT.push(bU[bS])}}bU=bT}return bU}}e.innerHTML="";if(e.firstChild&&typeof e.firstChild.getAttribute!=="undefined"&&e.firstChild.getAttribute("href")!=="#"){bE.attrHandle.href=function(bR){return bR.getAttribute("href",2)}}e=null})();if(av.querySelectorAll){(function(){var e=by,bT=av.createElement("div"),bS="__sizzle__";bT.innerHTML="

    ";if(bT.querySelectorAll&&bT.querySelectorAll(".TEST").length===0){return}by=function(b4,bV,bZ,b3){bV=bV||av;if(!b3&&!by.isXML(bV)){var b2=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b4);if(b2&&(bV.nodeType===1||bV.nodeType===9)){if(b2[1]){return bF(bV.getElementsByTagName(b4),bZ)}else{if(b2[2]&&bE.find.CLASS&&bV.getElementsByClassName){return bF(bV.getElementsByClassName(b2[2]),bZ)}}}if(bV.nodeType===9){if(b4==="body"&&bV.body){return bF([bV.body],bZ)}else{if(b2&&b2[3]){var bY=bV.getElementById(b2[3]);if(bY&&bY.parentNode){if(bY.id===b2[3]){return bF([bY],bZ)}}else{return bF([],bZ)}}}try{return bF(bV.querySelectorAll(b4),bZ)}catch(b0){}}else{if(bV.nodeType===1&&bV.nodeName.toLowerCase()!=="object"){var bW=bV,bX=bV.getAttribute("id"),bU=bX||bS,b6=bV.parentNode,b5=/^\s*[+~]/.test(b4);if(!bX){bV.setAttribute("id",bU)}else{bU=bU.replace(/'/g,"\\$&")}if(b5&&b6){bV=bV.parentNode}try{if(!b5||b6){return bF(bV.querySelectorAll("[id='"+bU+"'] "+b4),bZ)}}catch(b1){}finally{if(!bX){bW.removeAttribute("id")}}}}}return e(b4,bV,bZ,b3)};for(var bR in e){by[bR]=e[bR]}bT=null})()}(function(){var e=av.documentElement,bS=e.matchesSelector||e.mozMatchesSelector||e.webkitMatchesSelector||e.msMatchesSelector;if(bS){var bU=!bS.call(av.createElement("div"),"div"),bR=false;try{bS.call(av.documentElement,"[test!='']:sizzle")}catch(bT){bR=true}by.matchesSelector=function(bW,bY){bY=bY.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!by.isXML(bW)){try{if(bR||!bE.match.PSEUDO.test(bY)&&!/!=/.test(bY)){var bV=bS.call(bW,bY);if(bV||!bU||bW.document&&bW.document.nodeType!==11){return bV}}}catch(bX){}}return by(bY,null,null,[bW]).length>0}}})();(function(){var e=av.createElement("div");e.innerHTML="
    ";if(!e.getElementsByClassName||e.getElementsByClassName("e").length===0){return}e.lastChild.className="e";if(e.getElementsByClassName("e").length===1){return}bE.order.splice(1,0,"CLASS");bE.find.CLASS=function(bR,bS,bT){if(typeof bS.getElementsByClassName!=="undefined"&&!bT){return bS.getElementsByClassName(bR[1])}};e=null})();function bv(bR,bW,bV,bZ,bX,bY){for(var bT=0,bS=bZ.length;bT0){bU=e;break}}}e=e[bR]}bZ[bT]=bU}}}if(av.documentElement.contains){by.contains=function(bR,e){return bR!==e&&(bR.contains?bR.contains(e):true)}}else{if(av.documentElement.compareDocumentPosition){by.contains=function(bR,e){return !!(bR.compareDocumentPosition(e)&16)}}else{by.contains=function(){return false}}}by.isXML=function(e){var bR=(e?e.ownerDocument||e:0).documentElement;return bR?bR.nodeName!=="HTML":false};var bM=function(bS,e,bW){var bV,bX=[],bU="",bY=e.nodeType?[e]:e;while((bV=bE.match.PSEUDO.exec(bS))){bU+=bV[0];bS=bS.replace(bE.match.PSEUDO,"")}bS=bE.relative[bS]?bS+"*":bS;for(var bT=0,bR=bY.length;bT0){for(bB=bA;bB=0:b.filter(e,this).length>0:this.filter(e).length>0)},closest:function(by,bx){var bv=[],bw,e,bz=this[0];if(b.isArray(by)){var bB=1;while(bz&&bz.ownerDocument&&bz!==bx){for(bw=0;bw-1:b.find.matchesSelector(bz,by)){bv.push(bz);break}else{bz=bz.parentNode;if(!bz||!bz.ownerDocument||bz===bx||bz.nodeType===11){break}}}}bv=bv.length>1?b.unique(bv):bv;return this.pushStack(bv,"closest",by)},index:function(e){if(!e){return(this[0]&&this[0].parentNode)?this.prevAll().length:-1}if(typeof e==="string"){return b.inArray(this[0],b(e))}return b.inArray(e.jquery?e[0]:e,this)},add:function(e,bv){var bx=typeof e==="string"?b(e,bv):b.makeArray(e&&e.nodeType?[e]:e),bw=b.merge(this.get(),bx);return this.pushStack(C(bx[0])||C(bw[0])?bw:b.unique(bw))},andSelf:function(){return this.add(this.prevObject)}});function C(e){return !e||!e.parentNode||e.parentNode.nodeType===11}b.each({parent:function(bv){var e=bv.parentNode;return e&&e.nodeType!==11?e:null},parents:function(e){return b.dir(e,"parentNode")},parentsUntil:function(bv,e,bw){return b.dir(bv,"parentNode",bw)},next:function(e){return b.nth(e,2,"nextSibling")},prev:function(e){return b.nth(e,2,"previousSibling")},nextAll:function(e){return b.dir(e,"nextSibling")},prevAll:function(e){return b.dir(e,"previousSibling")},nextUntil:function(bv,e,bw){return b.dir(bv,"nextSibling",bw)},prevUntil:function(bv,e,bw){return b.dir(bv,"previousSibling",bw)},siblings:function(e){return b.sibling(e.parentNode.firstChild,e)},children:function(e){return b.sibling(e.firstChild)},contents:function(e){return b.nodeName(e,"iframe")?e.contentDocument||e.contentWindow.document:b.makeArray(e.childNodes)}},function(e,bv){b.fn[e]=function(by,bw){var bx=b.map(this,bv,by);if(!ab.test(e)){bw=by}if(bw&&typeof bw==="string"){bx=b.filter(bw,bx)}bx=this.length>1&&!ay[e]?b.unique(bx):bx;if((this.length>1||a9.test(bw))&&aq.test(e)){bx=bx.reverse()}return this.pushStack(bx,e,P.call(arguments).join(","))}});b.extend({filter:function(bw,e,bv){if(bv){bw=":not("+bw+")"}return e.length===1?b.find.matchesSelector(e[0],bw)?[e[0]]:[]:b.find.matches(bw,e)},dir:function(bw,bv,by){var e=[],bx=bw[bv];while(bx&&bx.nodeType!==9&&(by===L||bx.nodeType!==1||!b(bx).is(by))){if(bx.nodeType===1){e.push(bx)}bx=bx[bv]}return e},nth:function(by,e,bw,bx){e=e||1;var bv=0;for(;by;by=by[bw]){if(by.nodeType===1&&++bv===e){break}}return by},sibling:function(bw,bv){var e=[];for(;bw;bw=bw.nextSibling){if(bw.nodeType===1&&bw!==bv){e.push(bw)}}return e}});function aG(bx,bw,e){bw=bw||0;if(b.isFunction(bw)){return b.grep(bx,function(bz,by){var bA=!!bw.call(bz,by,bz);return bA===e})}else{if(bw.nodeType){return b.grep(bx,function(bz,by){return(bz===bw)===e})}else{if(typeof bw==="string"){var bv=b.grep(bx,function(by){return by.nodeType===1});if(bp.test(bw)){return b.filter(bw,bv,!e)}else{bw=b.filter(bw,bv)}}}}return b.grep(bx,function(bz,by){return(b.inArray(bz,bw)>=0)===e})}function a(e){var bw=aR.split("|"),bv=e.createDocumentFragment();if(bv.createElement){while(bw.length){bv.createElement(bw.pop())}}return bv}var aR="abbr|article|aside|audio|canvas|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",ag=/ jQuery\d+="(?:\d+|null)"/g,ar=/^\s+/,R=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,d=/<([\w:]+)/,w=/",""],legend:[1,"
    ","
    "],thead:[1,"","
    "],tr:[2,"","
    "],td:[3,"","
    "],col:[2,"","
    "],area:[1,"",""],_default:[0,"",""]},ac=a(av);ax.optgroup=ax.option;ax.tbody=ax.tfoot=ax.colgroup=ax.caption=ax.thead;ax.th=ax.td;if(!b.support.htmlSerialize){ax._default=[1,"div
    ","
    "]}b.fn.extend({text:function(e){if(b.isFunction(e)){return this.each(function(bw){var bv=b(this);bv.text(e.call(this,bw,bv.text()))})}if(typeof e!=="object"&&e!==L){return this.empty().append((this[0]&&this[0].ownerDocument||av).createTextNode(e))}return b.text(this)},wrapAll:function(e){if(b.isFunction(e)){return this.each(function(bw){b(this).wrapAll(e.call(this,bw))})}if(this[0]){var bv=b(e,this[0].ownerDocument).eq(0).clone(true);if(this[0].parentNode){bv.insertBefore(this[0])}bv.map(function(){var bw=this;while(bw.firstChild&&bw.firstChild.nodeType===1){bw=bw.firstChild}return bw}).append(this)}return this},wrapInner:function(e){if(b.isFunction(e)){return this.each(function(bv){b(this).wrapInner(e.call(this,bv))})}return this.each(function(){var bv=b(this),bw=bv.contents();if(bw.length){bw.wrapAll(e)}else{bv.append(e)}})},wrap:function(e){var bv=b.isFunction(e);return this.each(function(bw){b(this).wrapAll(bv?e.call(this,bw):e)})},unwrap:function(){return this.parent().each(function(){if(!b.nodeName(this,"body")){b(this).replaceWith(this.childNodes)}}).end()},append:function(){return this.domManip(arguments,true,function(e){if(this.nodeType===1){this.appendChild(e)}})},prepend:function(){return this.domManip(arguments,true,function(e){if(this.nodeType===1){this.insertBefore(e,this.firstChild)}})},before:function(){if(this[0]&&this[0].parentNode){return this.domManip(arguments,false,function(bv){this.parentNode.insertBefore(bv,this)})}else{if(arguments.length){var e=b.clean(arguments);e.push.apply(e,this.toArray());return this.pushStack(e,"before",arguments)}}},after:function(){if(this[0]&&this[0].parentNode){return this.domManip(arguments,false,function(bv){this.parentNode.insertBefore(bv,this.nextSibling)})}else{if(arguments.length){var e=this.pushStack(this,"after",arguments);e.push.apply(e,b.clean(arguments));return e}}},remove:function(e,bx){for(var bv=0,bw;(bw=this[bv])!=null;bv++){if(!e||b.filter(e,[bw]).length){if(!bx&&bw.nodeType===1){b.cleanData(bw.getElementsByTagName("*"));b.cleanData([bw])}if(bw.parentNode){bw.parentNode.removeChild(bw)}}}return this},empty:function(){for(var e=0,bv;(bv=this[e])!=null;e++){if(bv.nodeType===1){b.cleanData(bv.getElementsByTagName("*"))}while(bv.firstChild){bv.removeChild(bv.firstChild)}}return this},clone:function(bv,e){bv=bv==null?false:bv;e=e==null?bv:e;return this.map(function(){return b.clone(this,bv,e)})},html:function(bx){if(bx===L){return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(ag,""):null}else{if(typeof bx==="string"&&!ae.test(bx)&&(b.support.leadingWhitespace||!ar.test(bx))&&!ax[(d.exec(bx)||["",""])[1].toLowerCase()]){bx=bx.replace(R,"<$1>");try{for(var bw=0,bv=this.length;bw1&&bw0?this.clone(true):this).get();b(bC[bA])[bv](by);bz=bz.concat(by)}return this.pushStack(bz,e,bC.selector)}}});function bg(e){if(typeof e.getElementsByTagName!=="undefined"){return e.getElementsByTagName("*")}else{if(typeof e.querySelectorAll!=="undefined"){return e.querySelectorAll("*")}else{return[]}}}function az(e){if(e.type==="checkbox"||e.type==="radio"){e.defaultChecked=e.checked}}function E(e){var bv=(e.nodeName||"").toLowerCase();if(bv==="input"){az(e)}else{if(bv!=="script"&&typeof e.getElementsByTagName!=="undefined"){b.grep(e.getElementsByTagName("input"),az)}}}function al(e){var bv=av.createElement("div");ac.appendChild(bv);bv.innerHTML=e.outerHTML;return bv.firstChild}b.extend({clone:function(by,bA,bw){var e,bv,bx,bz=b.support.html5Clone||!ah.test("<"+by.nodeName)?by.cloneNode(true):al(by);if((!b.support.noCloneEvent||!b.support.noCloneChecked)&&(by.nodeType===1||by.nodeType===11)&&!b.isXMLDoc(by)){ai(by,bz);e=bg(by);bv=bg(bz);for(bx=0;e[bx];++bx){if(bv[bx]){ai(e[bx],bv[bx])}}}if(bA){t(by,bz);if(bw){e=bg(by);bv=bg(bz);for(bx=0;e[bx];++bx){t(e[bx],bv[bx])}}}e=bv=null;return bz},clean:function(bw,by,bH,bA){var bF;by=by||av;if(typeof by.createElement==="undefined"){by=by.ownerDocument||by[0]&&by[0].ownerDocument||av}var bI=[],bB;for(var bE=0,bz;(bz=bw[bE])!=null;bE++){if(typeof bz==="number"){bz+=""}if(!bz){continue}if(typeof bz==="string"){if(!W.test(bz)){bz=by.createTextNode(bz)}else{bz=bz.replace(R,"<$1>");var bK=(d.exec(bz)||["",""])[1].toLowerCase(),bx=ax[bK]||ax._default,bD=bx[0],bv=by.createElement("div");if(by===av){ac.appendChild(bv)}else{a(by).appendChild(bv)}bv.innerHTML=bx[1]+bz+bx[2];while(bD--){bv=bv.lastChild}if(!b.support.tbody){var e=w.test(bz),bC=bK==="table"&&!e?bv.firstChild&&bv.firstChild.childNodes:bx[1]===""&&!e?bv.childNodes:[];for(bB=bC.length-1;bB>=0;--bB){if(b.nodeName(bC[bB],"tbody")&&!bC[bB].childNodes.length){bC[bB].parentNode.removeChild(bC[bB])}}}if(!b.support.leadingWhitespace&&ar.test(bz)){bv.insertBefore(by.createTextNode(ar.exec(bz)[0]),bv.firstChild)}bz=bv.childNodes}}var bG;if(!b.support.appendChecked){if(bz[0]&&typeof(bG=bz.length)==="number"){for(bB=0;bB=0){return bx+"px"}}else{return bx}}}});if(!b.support.opacity){b.cssHooks.opacity={get:function(bv,e){return au.test((e&&bv.currentStyle?bv.currentStyle.filter:bv.style.filter)||"")?(parseFloat(RegExp.$1)/100)+"":e?"1":""},set:function(by,bz){var bx=by.style,bv=by.currentStyle,e=b.isNumeric(bz)?"alpha(opacity="+bz*100+")":"",bw=bv&&bv.filter||bx.filter||"";bx.zoom=1;if(bz>=1&&b.trim(bw.replace(ak,""))===""){bx.removeAttribute("filter");if(bv&&!bv.filter){return}}bx.filter=ak.test(bw)?bw.replace(ak,e):bw+" "+e}}}b(function(){if(!b.support.reliableMarginRight){b.cssHooks.marginRight={get:function(bw,bv){var e;b.swap(bw,{display:"inline-block"},function(){if(bv){e=Z(bw,"margin-right","marginRight")}else{e=bw.style.marginRight}});return e}}}});if(av.defaultView&&av.defaultView.getComputedStyle){aI=function(by,bw){var bv,bx,e;bw=bw.replace(z,"-$1").toLowerCase();if((bx=by.ownerDocument.defaultView)&&(e=bx.getComputedStyle(by,null))){bv=e.getPropertyValue(bw);if(bv===""&&!b.contains(by.ownerDocument.documentElement,by)){bv=b.style(by,bw)}}return bv}}if(av.documentElement.currentStyle){aX=function(bz,bw){var bA,e,by,bv=bz.currentStyle&&bz.currentStyle[bw],bx=bz.style;if(bv===null&&bx&&(by=bx[bw])){bv=by}if(!bc.test(bv)&&bn.test(bv)){bA=bx.left;e=bz.runtimeStyle&&bz.runtimeStyle.left;if(e){bz.runtimeStyle.left=bz.currentStyle.left}bx.left=bw==="fontSize"?"1em":(bv||0);bv=bx.pixelLeft+"px";bx.left=bA;if(e){bz.runtimeStyle.left=e}}return bv===""?"auto":bv}}Z=aI||aX;function p(by,bw,bv){var bA=bw==="width"?by.offsetWidth:by.offsetHeight,bz=bw==="width"?an:a1,bx=0,e=bz.length;if(bA>0){if(bv!=="border"){for(;bx)<[^<]*)*<\/script>/gi,q=/^(?:select|textarea)/i,h=/\s+/,br=/([?&])_=[^&]*/,K=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,A=b.fn.load,aa={},r={},aE,s,aV=["*/"]+["*"];try{aE=bl.href}catch(aw){aE=av.createElement("a");aE.href="";aE=aE.href}s=K.exec(aE.toLowerCase())||[];function f(e){return function(by,bA){if(typeof by!=="string"){bA=by;by="*"}if(b.isFunction(bA)){var bx=by.toLowerCase().split(h),bw=0,bz=bx.length,bv,bB,bC;for(;bw=0){var e=bw.slice(by,bw.length);bw=bw.slice(0,by)}var bx="GET";if(bz){if(b.isFunction(bz)){bA=bz;bz=L}else{if(typeof bz==="object"){bz=b.param(bz,b.ajaxSettings.traditional);bx="POST"}}}var bv=this;b.ajax({url:bw,type:bx,dataType:"html",data:bz,complete:function(bC,bB,bD){bD=bC.responseText;if(bC.isResolved()){bC.done(function(bE){bD=bE});bv.html(e?b("
    ").append(bD.replace(a6,"")).find(e):bD)}if(bA){bv.each(bA,[bD,bB,bC])}}});return this},serialize:function(){return b.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?b.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||q.test(this.nodeName)||aZ.test(this.type))}).map(function(e,bv){var bw=b(this).val();return bw==null?null:b.isArray(bw)?b.map(bw,function(by,bx){return{name:bv.name,value:by.replace(bs,"\r\n")}}):{name:bv.name,value:bw.replace(bs,"\r\n")}}).get()}});b.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(e,bv){b.fn[bv]=function(bw){return this.on(bv,bw)}});b.each(["get","post"],function(e,bv){b[bv]=function(bw,by,bz,bx){if(b.isFunction(by)){bx=bx||bz;bz=by;by=L}return b.ajax({type:bv,url:bw,data:by,success:bz,dataType:bx})}});b.extend({getScript:function(e,bv){return b.get(e,L,bv,"script")},getJSON:function(e,bv,bw){return b.get(e,bv,bw,"json")},ajaxSetup:function(bv,e){if(e){am(bv,b.ajaxSettings)}else{e=bv;bv=b.ajaxSettings}am(bv,e);return bv},ajaxSettings:{url:aE,isLocal:aM.test(s[1]),global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":aV},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":bb.String,"text html":true,"text json":b.parseJSON,"text xml":b.parseXML},flatOptions:{context:true,url:true}},ajaxPrefilter:f(aa),ajaxTransport:f(r),ajax:function(bz,bx){if(typeof bz==="object"){bx=bz;bz=L}bx=bx||{};var bD=b.ajaxSetup({},bx),bS=bD.context||bD,bG=bS!==bD&&(bS.nodeType||bS instanceof b)?b(bS):b.event,bR=b.Deferred(),bN=b.Callbacks("once memory"),bB=bD.statusCode||{},bC,bH={},bO={},bQ,by,bL,bE,bI,bA=0,bw,bK,bJ={readyState:0,setRequestHeader:function(bT,bU){if(!bA){var e=bT.toLowerCase();bT=bO[e]=bO[e]||bT;bH[bT]=bU}return this},getAllResponseHeaders:function(){return bA===2?bQ:null},getResponseHeader:function(bT){var e;if(bA===2){if(!by){by={};while((e=aD.exec(bQ))){by[e[1].toLowerCase()]=e[2]}}e=by[bT.toLowerCase()]}return e===L?null:e},overrideMimeType:function(e){if(!bA){bD.mimeType=e}return this},abort:function(e){e=e||"abort";if(bL){bL.abort(e)}bF(0,e);return this}};function bF(bZ,bU,b0,bW){if(bA===2){return}bA=2;if(bE){clearTimeout(bE)}bL=L;bQ=bW||"";bJ.readyState=bZ>0?4:0;var bT,b4,b3,bX=bU,bY=b0?bj(bD,bJ,b0):L,bV,b2;if(bZ>=200&&bZ<300||bZ===304){if(bD.ifModified){if((bV=bJ.getResponseHeader("Last-Modified"))){b.lastModified[bC]=bV}if((b2=bJ.getResponseHeader("Etag"))){b.etag[bC]=b2}}if(bZ===304){bX="notmodified";bT=true}else{try{b4=G(bD,bY);bX="success";bT=true}catch(b1){bX="parsererror";b3=b1}}}else{b3=bX;if(!bX||bZ){bX="error";if(bZ<0){bZ=0}}}bJ.status=bZ;bJ.statusText=""+(bU||bX);if(bT){bR.resolveWith(bS,[b4,bX,bJ])}else{bR.rejectWith(bS,[bJ,bX,b3])}bJ.statusCode(bB);bB=L;if(bw){bG.trigger("ajax"+(bT?"Success":"Error"),[bJ,bD,bT?b4:b3])}bN.fireWith(bS,[bJ,bX]);if(bw){bG.trigger("ajaxComplete",[bJ,bD]);if(!(--b.active)){b.event.trigger("ajaxStop")}}}bR.promise(bJ);bJ.success=bJ.done;bJ.error=bJ.fail;bJ.complete=bN.add;bJ.statusCode=function(bT){if(bT){var e;if(bA<2){for(e in bT){bB[e]=[bB[e],bT[e]]}}else{e=bT[bJ.status];bJ.then(e,e)}}return this};bD.url=((bz||bD.url)+"").replace(bq,"").replace(c,s[1]+"//");bD.dataTypes=b.trim(bD.dataType||"*").toLowerCase().split(h);if(bD.crossDomain==null){bI=K.exec(bD.url.toLowerCase());bD.crossDomain=!!(bI&&(bI[1]!=s[1]||bI[2]!=s[2]||(bI[3]||(bI[1]==="http:"?80:443))!=(s[3]||(s[1]==="http:"?80:443))))}if(bD.data&&bD.processData&&typeof bD.data!=="string"){bD.data=b.param(bD.data,bD.traditional)}aW(aa,bD,bx,bJ);if(bA===2){return false}bw=bD.global;bD.type=bD.type.toUpperCase();bD.hasContent=!aQ.test(bD.type);if(bw&&b.active++===0){b.event.trigger("ajaxStart")}if(!bD.hasContent){if(bD.data){bD.url+=(M.test(bD.url)?"&":"?")+bD.data;delete bD.data}bC=bD.url;if(bD.cache===false){var bv=b.now(),bP=bD.url.replace(br,"$1_="+bv);bD.url=bP+((bP===bD.url)?(M.test(bD.url)?"&":"?")+"_="+bv:"")}}if(bD.data&&bD.hasContent&&bD.contentType!==false||bx.contentType){bJ.setRequestHeader("Content-Type",bD.contentType)}if(bD.ifModified){bC=bC||bD.url;if(b.lastModified[bC]){bJ.setRequestHeader("If-Modified-Since",b.lastModified[bC])}if(b.etag[bC]){bJ.setRequestHeader("If-None-Match",b.etag[bC])}}bJ.setRequestHeader("Accept",bD.dataTypes[0]&&bD.accepts[bD.dataTypes[0]]?bD.accepts[bD.dataTypes[0]]+(bD.dataTypes[0]!=="*"?", "+aV+"; q=0.01":""):bD.accepts["*"]);for(bK in bD.headers){bJ.setRequestHeader(bK,bD.headers[bK])}if(bD.beforeSend&&(bD.beforeSend.call(bS,bJ,bD)===false||bA===2)){bJ.abort();return false}for(bK in {success:1,error:1,complete:1}){bJ[bK](bD[bK])}bL=aW(r,bD,bx,bJ);if(!bL){bF(-1,"No Transport")}else{bJ.readyState=1;if(bw){bG.trigger("ajaxSend",[bJ,bD])}if(bD.async&&bD.timeout>0){bE=setTimeout(function(){bJ.abort("timeout")},bD.timeout)}try{bA=1;bL.send(bH,bF)}catch(bM){if(bA<2){bF(-1,bM)}else{throw bM}}}return bJ},param:function(e,bw){var bv=[],by=function(bz,bA){bA=b.isFunction(bA)?bA():bA;bv[bv.length]=encodeURIComponent(bz)+"="+encodeURIComponent(bA)};if(bw===L){bw=b.ajaxSettings.traditional}if(b.isArray(e)||(e.jquery&&!b.isPlainObject(e))){b.each(e,function(){by(this.name,this.value)})}else{for(var bx in e){v(bx,e[bx],bw,by)}}return bv.join("&").replace(k,"+")}});function v(bw,by,bv,bx){if(b.isArray(by)){b.each(by,function(bA,bz){if(bv||ap.test(bw)){bx(bw,bz)}else{v(bw+"["+(typeof bz==="object"||b.isArray(bz)?bA:"")+"]",bz,bv,bx)}})}else{if(!bv&&by!=null&&typeof by==="object"){for(var e in by){v(bw+"["+e+"]",by[e],bv,bx)}}else{bx(bw,by)}}}b.extend({active:0,lastModified:{},etag:{}});function bj(bD,bC,bz){var bv=bD.contents,bB=bD.dataTypes,bw=bD.responseFields,by,bA,bx,e;for(bA in bw){if(bA in bz){bC[bw[bA]]=bz[bA]}}while(bB[0]==="*"){bB.shift();if(by===L){by=bD.mimeType||bC.getResponseHeader("content-type")}}if(by){for(bA in bv){if(bv[bA]&&bv[bA].test(by)){bB.unshift(bA);break}}}if(bB[0] in bz){bx=bB[0]}else{for(bA in bz){if(!bB[0]||bD.converters[bA+" "+bB[0]]){bx=bA;break}if(!e){e=bA}}bx=bx||e}if(bx){if(bx!==bB[0]){bB.unshift(bx)}return bz[bx]}}function G(bH,bz){if(bH.dataFilter){bz=bH.dataFilter(bz,bH.dataType)}var bD=bH.dataTypes,bG={},bA,bE,bw=bD.length,bB,bC=bD[0],bx,by,bF,bv,e;for(bA=1;bA=bw.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();bw.animatedProperties[this.prop]=true;for(bA in bw.animatedProperties){if(bw.animatedProperties[bA]!==true){e=false}}if(e){if(bw.overflow!=null&&!b.support.shrinkWrapBlocks){b.each(["","X","Y"],function(bC,bD){bz.style["overflow"+bD]=bw.overflow[bC]})}if(bw.hide){b(bz).hide()}if(bw.hide||bw.show){for(bA in bw.animatedProperties){b.style(bz,bA,bw.orig[bA]);b.removeData(bz,"fxshow"+bA,true);b.removeData(bz,"toggle"+bA,true)}}bv=bw.complete;if(bv){bw.complete=false;bv.call(bz)}}return false}else{if(bw.duration==Infinity){this.now=bx}else{bB=bx-this.startTime;this.state=bB/bw.duration;this.pos=b.easing[bw.animatedProperties[this.prop]](this.state,bB,0,1,bw.duration);this.now=this.start+((this.end-this.start)*this.pos)}this.update()}return true}};b.extend(b.fx,{tick:function(){var bw,bv=b.timers,e=0;for(;e").appendTo(e),bw=bv.css("display");bv.remove();if(bw==="none"||bw===""){if(!a8){a8=av.createElement("iframe");a8.frameBorder=a8.width=a8.height=0}e.appendChild(a8);if(!m||!a8.createElement){m=(a8.contentWindow||a8.contentDocument).document;m.write((av.compatMode==="CSS1Compat"?"":"")+"");m.close()}bv=m.createElement(bx);m.body.appendChild(bv);bw=b.css(bv,"display");e.removeChild(a8)}Q[bx]=bw}return Q[bx]}var V=/^t(?:able|d|h)$/i,ad=/^(?:body|html)$/i;if("getBoundingClientRect" in av.documentElement){b.fn.offset=function(bI){var by=this[0],bB;if(bI){return this.each(function(e){b.offset.setOffset(this,bI,e)})}if(!by||!by.ownerDocument){return null}if(by===by.ownerDocument.body){return b.offset.bodyOffset(by)}try{bB=by.getBoundingClientRect()}catch(bF){}var bH=by.ownerDocument,bw=bH.documentElement;if(!bB||!b.contains(bw,by)){return bB?{top:bB.top,left:bB.left}:{top:0,left:0}}var bC=bH.body,bD=aK(bH),bA=bw.clientTop||bC.clientTop||0,bE=bw.clientLeft||bC.clientLeft||0,bv=bD.pageYOffset||b.support.boxModel&&bw.scrollTop||bC.scrollTop,bz=bD.pageXOffset||b.support.boxModel&&bw.scrollLeft||bC.scrollLeft,bG=bB.top+bv-bA,bx=bB.left+bz-bE;return{top:bG,left:bx}}}else{b.fn.offset=function(bF){var bz=this[0];if(bF){return this.each(function(bG){b.offset.setOffset(this,bF,bG)})}if(!bz||!bz.ownerDocument){return null}if(bz===bz.ownerDocument.body){return b.offset.bodyOffset(bz)}var bC,bw=bz.offsetParent,bv=bz,bE=bz.ownerDocument,bx=bE.documentElement,bA=bE.body,bB=bE.defaultView,e=bB?bB.getComputedStyle(bz,null):bz.currentStyle,bD=bz.offsetTop,by=bz.offsetLeft;while((bz=bz.parentNode)&&bz!==bA&&bz!==bx){if(b.support.fixedPosition&&e.position==="fixed"){break}bC=bB?bB.getComputedStyle(bz,null):bz.currentStyle;bD-=bz.scrollTop;by-=bz.scrollLeft;if(bz===bw){bD+=bz.offsetTop;by+=bz.offsetLeft;if(b.support.doesNotAddBorder&&!(b.support.doesAddBorderForTableAndCells&&V.test(bz.nodeName))){bD+=parseFloat(bC.borderTopWidth)||0;by+=parseFloat(bC.borderLeftWidth)||0}bv=bw;bw=bz.offsetParent}if(b.support.subtractsBorderForOverflowNotVisible&&bC.overflow!=="visible"){bD+=parseFloat(bC.borderTopWidth)||0;by+=parseFloat(bC.borderLeftWidth)||0}e=bC}if(e.position==="relative"||e.position==="static"){bD+=bA.offsetTop;by+=bA.offsetLeft}if(b.support.fixedPosition&&e.position==="fixed"){bD+=Math.max(bx.scrollTop,bA.scrollTop);by+=Math.max(bx.scrollLeft,bA.scrollLeft)}return{top:bD,left:by}}}b.offset={bodyOffset:function(e){var bw=e.offsetTop,bv=e.offsetLeft;if(b.support.doesNotIncludeMarginInBodyOffset){bw+=parseFloat(b.css(e,"marginTop"))||0;bv+=parseFloat(b.css(e,"marginLeft"))||0}return{top:bw,left:bv}},setOffset:function(bx,bG,bA){var bB=b.css(bx,"position");if(bB==="static"){bx.style.position="relative"}var bz=b(bx),bv=bz.offset(),e=b.css(bx,"top"),bE=b.css(bx,"left"),bF=(bB==="absolute"||bB==="fixed")&&b.inArray("auto",[e,bE])>-1,bD={},bC={},bw,by;if(bF){bC=bz.position();bw=bC.top;by=bC.left}else{bw=parseFloat(e)||0;by=parseFloat(bE)||0}if(b.isFunction(bG)){bG=bG.call(bx,bA,bv)}if(bG.top!=null){bD.top=(bG.top-bv.top)+bw}if(bG.left!=null){bD.left=(bG.left-bv.left)+by}if("using" in bG){bG.using.call(bx,bD)}else{bz.css(bD)}}};b.fn.extend({position:function(){if(!this[0]){return null}var bw=this[0],bv=this.offsetParent(),bx=this.offset(),e=ad.test(bv[0].nodeName)?{top:0,left:0}:bv.offset();bx.top-=parseFloat(b.css(bw,"marginTop"))||0;bx.left-=parseFloat(b.css(bw,"marginLeft"))||0;e.top+=parseFloat(b.css(bv[0],"borderTopWidth"))||0;e.left+=parseFloat(b.css(bv[0],"borderLeftWidth"))||0;return{top:bx.top-e.top,left:bx.left-e.left}},offsetParent:function(){return this.map(function(){var e=this.offsetParent||av.body;while(e&&(!ad.test(e.nodeName)&&b.css(e,"position")==="static")){e=e.offsetParent}return e})}});b.each(["Left","Top"],function(bv,e){var bw="scroll"+e;b.fn[bw]=function(bz){var bx,by;if(bz===L){bx=this[0];if(!bx){return null}by=aK(bx);return by?("pageXOffset" in by)?by[bv?"pageYOffset":"pageXOffset"]:b.support.boxModel&&by.document.documentElement[bw]||by.document.body[bw]:bx[bw]}return this.each(function(){by=aK(this);if(by){by.scrollTo(!bv?bz:b(by).scrollLeft(),bv?bz:b(by).scrollTop())}else{this[bw]=bz}})}});function aK(e){return b.isWindow(e)?e:e.nodeType===9?e.defaultView||e.parentWindow:false}b.each(["Height","Width"],function(bv,e){var bw=e.toLowerCase();b.fn["inner"+e]=function(){var bx=this[0];return bx?bx.style?parseFloat(b.css(bx,bw,"padding")):this[bw]():null};b.fn["outer"+e]=function(by){var bx=this[0];return bx?bx.style?parseFloat(b.css(bx,bw,by?"margin":"border")):this[bw]():null};b.fn[bw]=function(bz){var bA=this[0];if(!bA){return bz==null?null:this}if(b.isFunction(bz)){return this.each(function(bE){var bD=b(this);bD[bw](bz.call(this,bE,bD[bw]()))})}if(b.isWindow(bA)){var bB=bA.document.documentElement["client"+e],bx=bA.document.body;return bA.document.compatMode==="CSS1Compat"&&bB||bx&&bx["client"+e]||bB}else{if(bA.nodeType===9){return Math.max(bA.documentElement["client"+e],bA.body["scroll"+e],bA.documentElement["scroll"+e],bA.body["offset"+e],bA.documentElement["offset"+e])}else{if(bz===L){var bC=b.css(bA,bw),by=parseFloat(bC);return b.isNumeric(by)?by:bC}else{return this.css(bw,typeof bz==="string"?bz:bz+"px")}}}}});bb.jQuery=bb.$=b;if(typeof define==="function"&&define.amd&&define.amd.jQuery){define("jquery",[],function(){return b})}})(window);/*! - * jQuery UI 1.8.18 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI - */ -(function(a,d){a.ui=a.ui||{};if(a.ui.version){return}a.extend(a.ui,{version:"1.8.18",keyCode:{ALT:18,BACKSPACE:8,CAPS_LOCK:20,COMMA:188,COMMAND:91,COMMAND_LEFT:91,COMMAND_RIGHT:93,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,INSERT:45,LEFT:37,MENU:93,NUMPAD_ADD:107,NUMPAD_DECIMAL:110,NUMPAD_DIVIDE:111,NUMPAD_ENTER:108,NUMPAD_MULTIPLY:106,NUMPAD_SUBTRACT:109,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SHIFT:16,SPACE:32,TAB:9,UP:38,WINDOWS:91}});a.fn.extend({propAttr:a.fn.prop||a.fn.attr,_focus:a.fn.focus,focus:function(e,f){return typeof e==="number"?this.each(function(){var g=this;setTimeout(function(){a(g).focus();if(f){f.call(g)}},e)}):this._focus.apply(this,arguments)},scrollParent:function(){var e;if((a.browser.msie&&(/(static|relative)/).test(this.css("position")))||(/absolute/).test(this.css("position"))){e=this.parents().filter(function(){return(/(relative|absolute|fixed)/).test(a.curCSS(this,"position",1))&&(/(auto|scroll)/).test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0)}else{e=this.parents().filter(function(){return(/(auto|scroll)/).test(a.curCSS(this,"overflow",1)+a.curCSS(this,"overflow-y",1)+a.curCSS(this,"overflow-x",1))}).eq(0)}return(/fixed/).test(this.css("position"))||!e.length?a(document):e},zIndex:function(h){if(h!==d){return this.css("zIndex",h)}if(this.length){var f=a(this[0]),e,g;while(f.length&&f[0]!==document){e=f.css("position");if(e==="absolute"||e==="relative"||e==="fixed"){g=parseInt(f.css("zIndex"),10);if(!isNaN(g)&&g!==0){return g}}f=f.parent()}}return 0},disableSelection:function(){return this.bind((a.support.selectstart?"selectstart":"mousedown")+".ui-disableSelection",function(e){e.preventDefault()})},enableSelection:function(){return this.unbind(".ui-disableSelection")}});a.each(["Width","Height"],function(g,e){var f=e==="Width"?["Left","Right"]:["Top","Bottom"],h=e.toLowerCase(),k={innerWidth:a.fn.innerWidth,innerHeight:a.fn.innerHeight,outerWidth:a.fn.outerWidth,outerHeight:a.fn.outerHeight};function j(m,l,i,n){a.each(f,function(){l-=parseFloat(a.curCSS(m,"padding"+this,true))||0;if(i){l-=parseFloat(a.curCSS(m,"border"+this+"Width",true))||0}if(n){l-=parseFloat(a.curCSS(m,"margin"+this,true))||0}});return l}a.fn["inner"+e]=function(i){if(i===d){return k["inner"+e].call(this)}return this.each(function(){a(this).css(h,j(this,i)+"px")})};a.fn["outer"+e]=function(i,l){if(typeof i!=="number"){return k["outer"+e].call(this,i)}return this.each(function(){a(this).css(h,j(this,i,true,l)+"px")})}});function c(g,e){var j=g.nodeName.toLowerCase();if("area"===j){var i=g.parentNode,h=i.name,f;if(!g.href||!h||i.nodeName.toLowerCase()!=="map"){return false}f=a("img[usemap=#"+h+"]")[0];return !!f&&b(f)}return(/input|select|textarea|button|object/.test(j)?!g.disabled:"a"==j?g.href||e:e)&&b(g)}function b(e){return !a(e).parents().andSelf().filter(function(){return a.curCSS(this,"visibility")==="hidden"||a.expr.filters.hidden(this)}).length}a.extend(a.expr[":"],{data:function(g,f,e){return !!a.data(g,e[3])},focusable:function(e){return c(e,!isNaN(a.attr(e,"tabindex")))},tabbable:function(g){var e=a.attr(g,"tabindex"),f=isNaN(e);return(f||e>=0)&&c(g,!f)}});a(function(){var e=document.body,f=e.appendChild(f=document.createElement("div"));f.offsetHeight;a.extend(f.style,{minHeight:"100px",height:"auto",padding:0,borderWidth:0});a.support.minHeight=f.offsetHeight===100;a.support.selectstart="onselectstart" in f;e.removeChild(f).style.display="none"});a.extend(a.ui,{plugin:{add:function(f,g,j){var h=a.ui[f].prototype;for(var e in j){h.plugins[e]=h.plugins[e]||[];h.plugins[e].push([g,j[e]])}},call:function(e,g,f){var j=e.plugins[g];if(!j||!e.element[0].parentNode){return}for(var h=0;h0){return true}h[e]=1;g=(h[e]>0);h[e]=0;return g},isOverAxis:function(f,e,g){return(f>e)&&(f<(e+g))},isOver:function(j,f,i,h,e,g){return a.ui.isOverAxis(j,i,e)&&a.ui.isOverAxis(f,h,g)}})})(jQuery);/*! - * jQuery UI Widget 1.8.18 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Widget - */ -(function(b,d){if(b.cleanData){var c=b.cleanData;b.cleanData=function(f){for(var g=0,h;(h=f[g])!=null;g++){try{b(h).triggerHandler("remove")}catch(j){}}c(f)}}else{var a=b.fn.remove;b.fn.remove=function(e,f){return this.each(function(){if(!f){if(!e||b.filter(e,[this]).length){b("*",this).add([this]).each(function(){try{b(this).triggerHandler("remove")}catch(g){}})}}return a.call(b(this),e,f)})}}b.widget=function(f,h,e){var g=f.split(".")[0],j;f=f.split(".")[1];j=g+"-"+f;if(!e){e=h;h=b.Widget}b.expr[":"][j]=function(k){return !!b.data(k,f)};b[g]=b[g]||{};b[g][f]=function(k,l){if(arguments.length){this._createWidget(k,l)}};var i=new h();i.options=b.extend(true,{},i.options);b[g][f].prototype=b.extend(true,i,{namespace:g,widgetName:f,widgetEventPrefix:b[g][f].prototype.widgetEventPrefix||f,widgetBaseClass:j},e);b.widget.bridge(f,b[g][f])};b.widget.bridge=function(f,e){b.fn[f]=function(i){var g=typeof i==="string",h=Array.prototype.slice.call(arguments,1),j=this;i=!g&&h.length?b.extend.apply(null,[true,i].concat(h)):i;if(g&&i.charAt(0)==="_"){return j}if(g){this.each(function(){var k=b.data(this,f),l=k&&b.isFunction(k[i])?k[i].apply(k,h):k;if(l!==k&&l!==d){j=l;return false}})}else{this.each(function(){var k=b.data(this,f);if(k){k.option(i||{})._init()}else{b.data(this,f,new e(i,this))}})}return j}};b.Widget=function(e,f){if(arguments.length){this._createWidget(e,f)}};b.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",options:{disabled:false},_createWidget:function(f,g){b.data(g,this.widgetName,this);this.element=b(g);this.options=b.extend(true,{},this.options,this._getCreateOptions(),f);var e=this;this.element.bind("remove."+this.widgetName,function(){e.destroy()});this._create();this._trigger("create");this._init()},_getCreateOptions:function(){return b.metadata&&b.metadata.get(this.element[0])[this.widgetName]},_create:function(){},_init:function(){},destroy:function(){this.element.unbind("."+this.widgetName).removeData(this.widgetName);this.widget().unbind("."+this.widgetName).removeAttr("aria-disabled").removeClass(this.widgetBaseClass+"-disabled ui-state-disabled")},widget:function(){return this.element},option:function(f,g){var e=f;if(arguments.length===0){return b.extend({},this.options)}if(typeof f==="string"){if(g===d){return this.options[f]}e={};e[f]=g}this._setOptions(e);return this},_setOptions:function(f){var e=this;b.each(f,function(g,h){e._setOption(g,h)});return this},_setOption:function(e,f){this.options[e]=f;if(e==="disabled"){this.widget()[f?"addClass":"removeClass"](this.widgetBaseClass+"-disabled ui-state-disabled").attr("aria-disabled",f)}return this},enable:function(){return this._setOption("disabled",false)},disable:function(){return this._setOption("disabled",true)},_trigger:function(e,f,g){var j,i,h=this.options[e];g=g||{};f=b.Event(f);f.type=(e===this.widgetEventPrefix?e:this.widgetEventPrefix+e).toLowerCase();f.target=this.element[0];i=f.originalEvent;if(i){for(j in i){if(!(j in f)){f[j]=i[j]}}}this.element.trigger(f,g);return !(b.isFunction(h)&&h.call(this.element[0],f,g)===false||f.isDefaultPrevented())}}})(jQuery);/*! - * jQuery UI Mouse 1.8.18 - * - * Copyright 2011, AUTHORS.txt (http://jqueryui.com/about) - * Dual licensed under the MIT or GPL Version 2 licenses. - * http://jquery.org/license - * - * http://docs.jquery.com/UI/Mouse - * - * Depends: - * jquery.ui.widget.js - */ -(function(b,c){var a=false;b(document).mouseup(function(d){a=false});b.widget("ui.mouse",{options:{cancel:":input,option",distance:1,delay:0},_mouseInit:function(){var d=this;this.element.bind("mousedown."+this.widgetName,function(e){return d._mouseDown(e)}).bind("click."+this.widgetName,function(e){if(true===b.data(e.target,d.widgetName+".preventClickEvent")){b.removeData(e.target,d.widgetName+".preventClickEvent");e.stopImmediatePropagation();return false}});this.started=false},_mouseDestroy:function(){this.element.unbind("."+this.widgetName)},_mouseDown:function(f){if(a){return}(this._mouseStarted&&this._mouseUp(f));this._mouseDownEvent=f;var e=this,g=(f.which==1),d=(typeof this.options.cancel=="string"&&f.target.nodeName?b(f.target).closest(this.options.cancel).length:false);if(!g||d||!this._mouseCapture(f)){return true}this.mouseDelayMet=!this.options.delay;if(!this.mouseDelayMet){this._mouseDelayTimer=setTimeout(function(){e.mouseDelayMet=true},this.options.delay)}if(this._mouseDistanceMet(f)&&this._mouseDelayMet(f)){this._mouseStarted=(this._mouseStart(f)!==false);if(!this._mouseStarted){f.preventDefault();return true}}if(true===b.data(f.target,this.widgetName+".preventClickEvent")){b.removeData(f.target,this.widgetName+".preventClickEvent")}this._mouseMoveDelegate=function(h){return e._mouseMove(h)};this._mouseUpDelegate=function(h){return e._mouseUp(h)};b(document).bind("mousemove."+this.widgetName,this._mouseMoveDelegate).bind("mouseup."+this.widgetName,this._mouseUpDelegate);f.preventDefault();a=true;return true},_mouseMove:function(d){if(b.browser.msie&&!(document.documentMode>=9)&&!d.button){return this._mouseUp(d)}if(this._mouseStarted){this._mouseDrag(d);return d.preventDefault()}if(this._mouseDistanceMet(d)&&this._mouseDelayMet(d)){this._mouseStarted=(this._mouseStart(this._mouseDownEvent,d)!==false);(this._mouseStarted?this._mouseDrag(d):this._mouseUp(d))}return !this._mouseStarted},_mouseUp:function(d){b(document).unbind("mousemove."+this.widgetName,this._mouseMoveDelegate).unbind("mouseup."+this.widgetName,this._mouseUpDelegate);if(this._mouseStarted){this._mouseStarted=false;if(d.target==this._mouseDownEvent.target){b.data(d.target,this.widgetName+".preventClickEvent",true)}this._mouseStop(d)}return false},_mouseDistanceMet:function(d){return(Math.max(Math.abs(this._mouseDownEvent.pageX-d.pageX),Math.abs(this._mouseDownEvent.pageY-d.pageY))>=this.options.distance)},_mouseDelayMet:function(d){return this.mouseDelayMet},_mouseStart:function(d){},_mouseDrag:function(d){},_mouseStop:function(d){},_mouseCapture:function(d){return true}})})(jQuery);(function(c,d){c.widget("ui.resizable",c.ui.mouse,{widgetEventPrefix:"resize",options:{alsoResize:false,animate:false,animateDuration:"slow",animateEasing:"swing",aspectRatio:false,autoHide:false,containment:false,ghost:false,grid:false,handles:"e,s,se",helper:false,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:1000},_create:function(){var f=this,k=this.options;this.element.addClass("ui-resizable");c.extend(this,{_aspectRatio:!!(k.aspectRatio),aspectRatio:k.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:k.helper||k.ghost||k.animate?k.helper||"ui-resizable-helper":null});if(this.element[0].nodeName.match(/canvas|textarea|input|select|button|img/i)){this.element.wrap(c('
    ').css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")}));this.element=this.element.parent().data("resizable",this.element.data("resizable"));this.elementIsWrapper=true;this.element.css({marginLeft:this.originalElement.css("marginLeft"),marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom")});this.originalElement.css({marginLeft:0,marginTop:0,marginRight:0,marginBottom:0});this.originalResizeStyle=this.originalElement.css("resize");this.originalElement.css("resize","none");this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"}));this.originalElement.css({margin:this.originalElement.css("margin")});this._proportionallyResize()}this.handles=k.handles||(!c(".ui-resizable-handle",this.element).length?"e,s,se":{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"});if(this.handles.constructor==String){if(this.handles=="all"){this.handles="n,e,s,w,se,sw,ne,nw"}var l=this.handles.split(",");this.handles={};for(var g=0;g
    ');if(/sw|se|ne|nw/.test(j)){h.css({zIndex:++k.zIndex})}if("se"==j){h.addClass("ui-icon ui-icon-gripsmall-diagonal-se")}this.handles[j]=".ui-resizable-"+j;this.element.append(h)}}this._renderAxis=function(q){q=q||this.element;for(var n in this.handles){if(this.handles[n].constructor==String){this.handles[n]=c(this.handles[n],this.element).show()}if(this.elementIsWrapper&&this.originalElement[0].nodeName.match(/textarea|input|select|button/i)){var o=c(this.handles[n],this.element),p=0;p=/sw|ne|nw|se|n|s/.test(n)?o.outerHeight():o.outerWidth();var m=["padding",/ne|nw|n/.test(n)?"Top":/se|sw|s/.test(n)?"Bottom":/^e$/.test(n)?"Right":"Left"].join("");q.css(m,p);this._proportionallyResize()}if(!c(this.handles[n]).length){continue}}};this._renderAxis(this.element);this._handles=c(".ui-resizable-handle",this.element).disableSelection();this._handles.mouseover(function(){if(!f.resizing){if(this.className){var i=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i)}f.axis=i&&i[1]?i[1]:"se"}});if(k.autoHide){this._handles.hide();c(this.element).addClass("ui-resizable-autohide").hover(function(){if(k.disabled){return}c(this).removeClass("ui-resizable-autohide");f._handles.show()},function(){if(k.disabled){return}if(!f.resizing){c(this).addClass("ui-resizable-autohide");f._handles.hide()}})}this._mouseInit()},destroy:function(){this._mouseDestroy();var e=function(g){c(g).removeClass("ui-resizable ui-resizable-disabled ui-resizable-resizing").removeData("resizable").unbind(".resizable").find(".ui-resizable-handle").remove()};if(this.elementIsWrapper){e(this.element);var f=this.element;f.after(this.originalElement.css({position:f.css("position"),width:f.outerWidth(),height:f.outerHeight(),top:f.css("top"),left:f.css("left")})).remove()}this.originalElement.css("resize",this.originalResizeStyle);e(this.originalElement);return this},_mouseCapture:function(f){var g=false;for(var e in this.handles){if(c(this.handles[e])[0]==f.target){g=true}}return !this.options.disabled&&g},_mouseStart:function(g){var j=this.options,f=this.element.position(),e=this.element;this.resizing=true;this.documentScroll={top:c(document).scrollTop(),left:c(document).scrollLeft()};if(e.is(".ui-draggable")||(/absolute/).test(e.css("position"))){e.css({position:"absolute",top:f.top,left:f.left})}this._renderProxy();var k=b(this.helper.css("left")),h=b(this.helper.css("top"));if(j.containment){k+=c(j.containment).scrollLeft()||0;h+=c(j.containment).scrollTop()||0}this.offset=this.helper.offset();this.position={left:k,top:h};this.size=this._helper?{width:e.outerWidth(),height:e.outerHeight()}:{width:e.width(),height:e.height()};this.originalSize=this._helper?{width:e.outerWidth(),height:e.outerHeight()}:{width:e.width(),height:e.height()};this.originalPosition={left:k,top:h};this.sizeDiff={width:e.outerWidth()-e.width(),height:e.outerHeight()-e.height()};this.originalMousePosition={left:g.pageX,top:g.pageY};this.aspectRatio=(typeof j.aspectRatio=="number")?j.aspectRatio:((this.originalSize.width/this.originalSize.height)||1);var i=c(".ui-resizable-"+this.axis).css("cursor");c("body").css("cursor",i=="auto"?this.axis+"-resize":i);e.addClass("ui-resizable-resizing");this._propagate("start",g);return true},_mouseDrag:function(e){var h=this.helper,g=this.options,m={},q=this,j=this.originalMousePosition,n=this.axis;var r=(e.pageX-j.left)||0,p=(e.pageY-j.top)||0;var i=this._change[n];if(!i){return false}var l=i.apply(this,[e,r,p]),k=c.browser.msie&&c.browser.version<7,f=this.sizeDiff;this._updateVirtualBoundaries(e.shiftKey);if(this._aspectRatio||e.shiftKey){l=this._updateRatio(l,e)}l=this._respectSize(l,e);this._propagate("resize",e);h.css({top:this.position.top+"px",left:this.position.left+"px",width:this.size.width+"px",height:this.size.height+"px"});if(!this._helper&&this._proportionallyResizeElements.length){this._proportionallyResize()}this._updateCache(l);this._trigger("resize",e,this.ui());return false},_mouseStop:function(h){this.resizing=false;var i=this.options,m=this;if(this._helper){var g=this._proportionallyResizeElements,e=g.length&&(/textarea/i).test(g[0].nodeName),f=e&&c.ui.hasScroll(g[0],"left")?0:m.sizeDiff.height,k=e?0:m.sizeDiff.width;var n={width:(m.helper.width()-k),height:(m.helper.height()-f)},j=(parseInt(m.element.css("left"),10)+(m.position.left-m.originalPosition.left))||null,l=(parseInt(m.element.css("top"),10)+(m.position.top-m.originalPosition.top))||null;if(!i.animate){this.element.css(c.extend(n,{top:l,left:j}))}m.helper.height(m.size.height);m.helper.width(m.size.width);if(this._helper&&!i.animate){this._proportionallyResize()}}c("body").css("cursor","auto");this.element.removeClass("ui-resizable-resizing");this._propagate("stop",h);if(this._helper){this.helper.remove()}return false},_updateVirtualBoundaries:function(g){var j=this.options,i,h,f,k,e;e={minWidth:a(j.minWidth)?j.minWidth:0,maxWidth:a(j.maxWidth)?j.maxWidth:Infinity,minHeight:a(j.minHeight)?j.minHeight:0,maxHeight:a(j.maxHeight)?j.maxHeight:Infinity};if(this._aspectRatio||g){i=e.minHeight*this.aspectRatio;f=e.minWidth/this.aspectRatio;h=e.maxHeight*this.aspectRatio;k=e.maxWidth/this.aspectRatio;if(i>e.minWidth){e.minWidth=i}if(f>e.minHeight){e.minHeight=f}if(hl.width),s=a(l.height)&&i.minHeight&&(i.minHeight>l.height);if(h){l.width=i.minWidth}if(s){l.height=i.minHeight}if(t){l.width=i.maxWidth}if(m){l.height=i.maxHeight}var f=this.originalPosition.left+this.originalSize.width,p=this.position.top+this.size.height;var k=/sw|nw|w/.test(q),e=/nw|ne|n/.test(q);if(h&&k){l.left=f-i.minWidth}if(t&&k){l.left=f-i.maxWidth}if(s&&e){l.top=p-i.minHeight}if(m&&e){l.top=p-i.maxHeight}var n=!l.width&&!l.height;if(n&&!l.left&&l.top){l.top=null}else{if(n&&!l.top&&l.left){l.left=null}}return l},_proportionallyResize:function(){var k=this.options;if(!this._proportionallyResizeElements.length){return}var g=this.helper||this.element;for(var f=0;f');var e=c.browser.msie&&c.browser.version<7,g=(e?1:0),h=(e?2:-1);this.helper.addClass(this._helper).css({width:this.element.outerWidth()+h,height:this.element.outerHeight()+h,position:"absolute",left:this.elementOffset.left-g+"px",top:this.elementOffset.top-g+"px",zIndex:++i.zIndex});this.helper.appendTo("body").disableSelection()}else{this.helper=this.element}},_change:{e:function(g,f,e){return{width:this.originalSize.width+f}},w:function(h,f,e){var j=this.options,g=this.originalSize,i=this.originalPosition;return{left:i.left+f,width:g.width-f}},n:function(h,f,e){var j=this.options,g=this.originalSize,i=this.originalPosition;return{top:i.top+e,height:g.height-e}},s:function(g,f,e){return{height:this.originalSize.height+e}},se:function(g,f,e){return c.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[g,f,e]))},sw:function(g,f,e){return c.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[g,f,e]))},ne:function(g,f,e){return c.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[g,f,e]))},nw:function(g,f,e){return c.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[g,f,e]))}},_propagate:function(f,e){c.ui.plugin.call(this,f,[e,this.ui()]);(f!="resize"&&this._trigger(f,e,this.ui()))},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}});c.extend(c.ui.resizable,{version:"1.8.18"});c.ui.plugin.add("resizable","alsoResize",{start:function(f,g){var e=c(this).data("resizable"),i=e.options;var h=function(j){c(j).each(function(){var k=c(this);k.data("resizable-alsoresize",{width:parseInt(k.width(),10),height:parseInt(k.height(),10),left:parseInt(k.css("left"),10),top:parseInt(k.css("top"),10)})})};if(typeof(i.alsoResize)=="object"&&!i.alsoResize.parentNode){if(i.alsoResize.length){i.alsoResize=i.alsoResize[0];h(i.alsoResize)}else{c.each(i.alsoResize,function(j){h(j)})}}else{h(i.alsoResize)}},resize:function(g,i){var f=c(this).data("resizable"),j=f.options,h=f.originalSize,l=f.originalPosition;var k={height:(f.size.height-h.height)||0,width:(f.size.width-h.width)||0,top:(f.position.top-l.top)||0,left:(f.position.left-l.left)||0},e=function(m,n){c(m).each(function(){var q=c(this),r=c(this).data("resizable-alsoresize"),p={},o=n&&n.length?n:q.parents(i.originalElement[0]).length?["width","height"]:["width","height","top","left"];c.each(o,function(s,u){var t=(r[u]||0)+(k[u]||0);if(t&&t>=0){p[u]=t||null}});q.css(p)})};if(typeof(j.alsoResize)=="object"&&!j.alsoResize.nodeType){c.each(j.alsoResize,function(m,n){e(m,n)})}else{e(j.alsoResize)}},stop:function(e,f){c(this).removeData("resizable-alsoresize")}});c.ui.plugin.add("resizable","animate",{stop:function(i,n){var p=c(this).data("resizable"),j=p.options;var h=p._proportionallyResizeElements,e=h.length&&(/textarea/i).test(h[0].nodeName),f=e&&c.ui.hasScroll(h[0],"left")?0:p.sizeDiff.height,l=e?0:p.sizeDiff.width;var g={width:(p.size.width-l),height:(p.size.height-f)},k=(parseInt(p.element.css("left"),10)+(p.position.left-p.originalPosition.left))||null,m=(parseInt(p.element.css("top"),10)+(p.position.top-p.originalPosition.top))||null;p.element.animate(c.extend(g,m&&k?{top:m,left:k}:{}),{duration:j.animateDuration,easing:j.animateEasing,step:function(){var o={width:parseInt(p.element.css("width"),10),height:parseInt(p.element.css("height"),10),top:parseInt(p.element.css("top"),10),left:parseInt(p.element.css("left"),10)};if(h&&h.length){c(h[0]).css({width:o.width,height:o.height})}p._updateCache(o);p._propagate("resize",i)}})}});c.ui.plugin.add("resizable","containment",{start:function(f,r){var t=c(this).data("resizable"),j=t.options,l=t.element;var g=j.containment,k=(g instanceof c)?g.get(0):(/parent/.test(g))?l.parent().get(0):g;if(!k){return}t.containerElement=c(k);if(/document/.test(g)||g==document){t.containerOffset={left:0,top:0};t.containerPosition={left:0,top:0};t.parentData={element:c(document),left:0,top:0,width:c(document).width(),height:c(document).height()||document.body.parentNode.scrollHeight}}else{var n=c(k),i=[];c(["Top","Right","Left","Bottom"]).each(function(p,o){i[p]=b(n.css("padding"+o))});t.containerOffset=n.offset();t.containerPosition=n.position();t.containerSize={height:(n.innerHeight()-i[3]),width:(n.innerWidth()-i[1])};var q=t.containerOffset,e=t.containerSize.height,m=t.containerSize.width,h=(c.ui.hasScroll(k,"left")?k.scrollWidth:m),s=(c.ui.hasScroll(k)?k.scrollHeight:e);t.parentData={element:k,left:q.left,top:q.top,width:h,height:s}}},resize:function(g,q){var t=c(this).data("resizable"),i=t.options,f=t.containerSize,p=t.containerOffset,m=t.size,n=t.position,r=t._aspectRatio||g.shiftKey,e={top:0,left:0},h=t.containerElement;if(h[0]!=document&&(/static/).test(h.css("position"))){e=p}if(n.left<(t._helper?p.left:0)){t.size.width=t.size.width+(t._helper?(t.position.left-p.left):(t.position.left-e.left));if(r){t.size.height=t.size.width/i.aspectRatio}t.position.left=i.helper?p.left:0}if(n.top<(t._helper?p.top:0)){t.size.height=t.size.height+(t._helper?(t.position.top-p.top):t.position.top);if(r){t.size.width=t.size.height*i.aspectRatio}t.position.top=t._helper?p.top:0}t.offset.left=t.parentData.left+t.position.left;t.offset.top=t.parentData.top+t.position.top;var l=Math.abs((t._helper?t.offset.left-e.left:(t.offset.left-e.left))+t.sizeDiff.width),s=Math.abs((t._helper?t.offset.top-e.top:(t.offset.top-p.top))+t.sizeDiff.height);var k=t.containerElement.get(0)==t.element.parent().get(0),j=/relative|absolute/.test(t.containerElement.css("position"));if(k&&j){l-=t.parentData.left}if(l+t.size.width>=t.parentData.width){t.size.width=t.parentData.width-l;if(r){t.size.height=t.size.width/t.aspectRatio}}if(s+t.size.height>=t.parentData.height){t.size.height=t.parentData.height-s;if(r){t.size.width=t.size.height*t.aspectRatio}}},stop:function(f,n){var q=c(this).data("resizable"),g=q.options,l=q.position,m=q.containerOffset,e=q.containerPosition,i=q.containerElement;var j=c(q.helper),r=j.offset(),p=j.outerWidth()-q.sizeDiff.width,k=j.outerHeight()-q.sizeDiff.height;if(q._helper&&!g.animate&&(/relative/).test(i.css("position"))){c(this).css({left:r.left-e.left-m.left,width:p,height:k})}if(q._helper&&!g.animate&&(/static/).test(i.css("position"))){c(this).css({left:r.left-e.left-m.left,width:p,height:k})}}});c.ui.plugin.add("resizable","ghost",{start:function(g,h){var e=c(this).data("resizable"),i=e.options,f=e.size;e.ghost=e.originalElement.clone();e.ghost.css({opacity:0.25,display:"block",position:"relative",height:f.height,width:f.width,margin:0,left:0,top:0}).addClass("ui-resizable-ghost").addClass(typeof i.ghost=="string"?i.ghost:"");e.ghost.appendTo(e.helper)},resize:function(f,g){var e=c(this).data("resizable"),h=e.options;if(e.ghost){e.ghost.css({position:"relative",height:e.size.height,width:e.size.width})}},stop:function(f,g){var e=c(this).data("resizable"),h=e.options;if(e.ghost&&e.helper){e.helper.get(0).removeChild(e.ghost.get(0))}}});c.ui.plugin.add("resizable","grid",{resize:function(e,m){var p=c(this).data("resizable"),h=p.options,k=p.size,i=p.originalSize,j=p.originalPosition,n=p.axis,l=h._aspectRatio||e.shiftKey;h.grid=typeof h.grid=="number"?[h.grid,h.grid]:h.grid;var g=Math.round((k.width-i.width)/(h.grid[0]||1))*(h.grid[0]||1),f=Math.round((k.height-i.height)/(h.grid[1]||1))*(h.grid[1]||1);if(/^(se|s|e)$/.test(n)){p.size.width=i.width+g;p.size.height=i.height+f}else{if(/^(ne)$/.test(n)){p.size.width=i.width+g;p.size.height=i.height+f;p.position.top=j.top-f}else{if(/^(sw)$/.test(n)){p.size.width=i.width+g;p.size.height=i.height+f;p.position.left=j.left-g}else{p.size.width=i.width+g;p.size.height=i.height+f;p.position.top=j.top-f;p.position.left=j.left-g}}}}});var b=function(e){return parseInt(e,10)||0};var a=function(e){return !isNaN(parseInt(e,10))}})(jQuery);/*! - * jQuery hashchange event - v1.3 - 7/21/2010 - * http://benalman.com/projects/jquery-hashchange-plugin/ - * - * Copyright (c) 2010 "Cowboy" Ben Alman - * Dual licensed under the MIT and GPL licenses. - * http://benalman.com/about/license/ - */ -(function($,e,b){var c="hashchange",h=document,f,g=$.event.special,i=h.documentMode,d="on"+c in e&&(i===b||i>7);function a(j){j=j||location.href;return"#"+j.replace(/^[^#]*#?(.*)$/,"$1")}$.fn[c]=function(j){return j?this.bind(c,j):this.trigger(c)};$.fn[c].delay=50;g[c]=$.extend(g[c],{setup:function(){if(d){return false}$(f.start)},teardown:function(){if(d){return false}$(f.stop)}});f=(function(){var j={},p,m=a(),k=function(q){return q},l=k,o=k;j.start=function(){p||n()};j.stop=function(){p&&clearTimeout(p);p=b};function n(){var r=a(),q=o(m);if(r!==m){l(m=r,q);$(e).trigger(c)}else{if(q!==m){location.href=location.href.replace(/#.*/,"")+q}}p=setTimeout(n,$.fn[c].delay)}$.browser.msie&&!d&&(function(){var q,r;j.start=function(){if(!q){r=$.fn[c].src;r=r&&r+a();q=$(' - - - - -
    - -
    -
    math.hpp File Reference
    -
    -
    - -

    Common math functions that work on BigInt. -More...

    -
    #include <string>
    -#include "functions/conversion.hpp"
    -
    -

    Go to the source code of this file.

    -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Functions

    BigInt abs (const BigInt &num)
     Returns absolute value of the integer. More...
     
    BigInt big_pow10 (size_t exp)
     Returns BigInt with value of \(10^{\text{exp}}\). More...
     
    BigInt pow (const BigInt &base, int exp)
     Performs exponentiation of BigInt with an int value. More...
     
    BigInt pow (const long long &base, int exp)
     Performs exponentiation of long long with an int value. More...
     
    BigInt pow (const std::string &base, int exp)
     Performs exponentiation of std::string with an int value. More...
     
    BigInt sqrt (const BigInt &num)
     Computes square root of BigInt value. More...
     
    BigInt gcd (const BigInt &num1, const BigInt &num2)
     Computes greatest common divisor (GCD) of two BigInt values. More...
     
    BigInt gcd (const BigInt &num1, const long long &num2)
     Computes greatest common divisor (GCD) of a BigInt and a long long More...
     
    BigInt gcd (const BigInt &num1, const std::string &num2)
     Computes greatest common divisor (GCD) of a BigInt and a std::string More...
     
    BigInt gcd (const long long &num1, const BigInt &num2)
     Computes greatest common divisor (GCD) of a long long and a BigInt. More...
     
    BigInt gcd (const std::string &num1, const BigInt &num2)
     Computes greatest common divisor (GCD) of a std::string and a BigInt. More...
     
    BigInt lcm (const BigInt &num1, const BigInt &num2)
     Computes least common multiple (LCM) of two BigInt values. More...
     
    BigInt lcm (const BigInt &num1, const long long &num2)
     Computes least common multiple (LCM) of a BigInt and a long long value. More...
     
    BigInt lcm (const BigInt &num1, const std::string &num2)
     Computes least common multiple (LCM) of a BigInt and a std::string value. More...
     
    BigInt lcm (const long long &num1, const BigInt &num2)
     Computes least common multiple (LCM) of a long long and a BigInt value. More...
     
    BigInt lcm (const std::string &num1, const BigInt &num2)
     Computes least common multiple (LCM) of a std::string and a BigInt value. More...
     
    -

    Detailed Description

    -

    Common math functions that work on BigInt.

    -

    Function Documentation

    - -

    ◆ abs()

    - -
    -
    - - - - - - - - -
    BigInt abs (const BigIntnum)
    -
    - -

    Returns absolute value of the integer.

    -
    Parameters
    - - -
    numa BigInt variable
    -
    -
    -
    Returns
    BigInt that contains the absolute value of num
    - -
    -
    - -

    ◆ big_pow10()

    - -
    -
    - - - - - - - - -
    BigInt big_pow10 (size_t exp)
    -
    - -

    Returns BigInt with value of \(10^{\text{exp}}\).

    -
    Parameters
    - - -
    expa size_t variable, number to raise 10 to
    -
    -
    -
    Returns
    BigInt with value \(10^{\text{exp}}\)
    -
    Warning
    exp must be a whole number.
    - -
    -
    - -

    ◆ gcd() [1/5]

    - -
    -
    - - - - - - - - - - - - - - - - - - -
    BigInt gcd (const BigIntnum1,
    const BigIntnum2 
    )
    -
    - -

    Computes greatest common divisor (GCD) of two BigInt values.

    -

    The GCD is calculated using Euclid's algorithm.

    -
    Parameters
    - - - -
    num1the first BigInt GCD parameter
    num2the second BigInt GCD parameter
    -
    -
    -
    Returns
    BigInt contains value of GCD(num1, num2)
    - -
    -
    - -

    ◆ gcd() [2/5]

    - -
    -
    - - - - - - - - - - - - - - - - - - -
    BigInt gcd (const BigIntnum1,
    const long long & num2 
    )
    -
    - -

    Computes greatest common divisor (GCD) of a BigInt and a long long

    -

    Uses gcd(const BigInt &, const BigInt &)

    -
    Parameters
    - - - -
    num1the first BigInt GCD parameter
    num2the second long long GCD parameter
    -
    -
    -
    Returns
    BigInt contains value of GCD(num1, num2)
    - -
    -
    - -

    ◆ gcd() [3/5]

    - -
    -
    - - - - - - - - - - - - - - - - - - -
    BigInt gcd (const BigIntnum1,
    const std::string & num2 
    )
    -
    - -

    Computes greatest common divisor (GCD) of a BigInt and a std::string

    -

    Uses gcd(const BigInt &, const BigInt &)

    -
    Parameters
    - - - -
    num1the first BigInt GCD parameter
    num2the second std::string GCD parameter
    -
    -
    -
    Returns
    BigInt contains value of GCD(num1, num2)
    - -
    -
    - -

    ◆ gcd() [4/5]

    - -
    -
    - - - - - - - - - - - - - - - - - - -
    BigInt gcd (const long long & num1,
    const BigIntnum2 
    )
    -
    - -

    Computes greatest common divisor (GCD) of a long long and a BigInt.

    -

    Uses gcd(const BigInt &, const BigInt &)

    -
    Parameters
    - - - -
    num1the first long long GCD parameter
    num2the second BigInt GCD parameter
    -
    -
    -
    Returns
    BigInt contains value of GCD(num1, num2)
    - -
    -
    - -

    ◆ gcd() [5/5]

    - -
    -
    - - - - - - - - - - - - - - - - - - -
    BigInt gcd (const std::string & num1,
    const BigIntnum2 
    )
    -
    - -

    Computes greatest common divisor (GCD) of a std::string and a BigInt.

    -

    Uses gcd(const BigInt &, const BigInt &)

    -
    Parameters
    - - - -
    num1the first std::string GCD parameter
    num2the second BigInt GCD parameter
    -
    -
    -
    Returns
    BigInt contains value of GCD(num1, num2)
    - -
    -
    - -

    ◆ lcm() [1/5]

    - -
    -
    - - - - - - - - - - - - - - - - - - -
    BigInt lcm (const BigIntnum1,
    const BigIntnum2 
    )
    -
    - -

    Computes least common multiple (LCM) of two BigInt values.

    -

    Uses gcd(const BigInt &, const BigInt &) in the formula \(\frac{a * b}{GCD(a, b)}\)

    -
    Parameters
    - - - -
    num1the first BigInt LCM parameter
    num2the second BigInt LCM parameter
    -
    -
    -
    Returns
    BigInt contains value of LCM(num1, num2)
    - -
    -
    - -

    ◆ lcm() [2/5]

    - -
    -
    - - - - - - - - - - - - - - - - - - -
    BigInt lcm (const BigIntnum1,
    const long long & num2 
    )
    -
    - -

    Computes least common multiple (LCM) of a BigInt and a long long value.

    -

    Uses lcm(const BigInt &, const BigInt &)

    -
    Parameters
    - - - -
    num1the first BigInt LCM parameter
    num2the second long long LCM parameter
    -
    -
    -
    Returns
    BigInt contains value of LCM(num1, num2)
    - -
    -
    - -

    ◆ lcm() [3/5]

    - -
    -
    - - - - - - - - - - - - - - - - - - -
    BigInt lcm (const BigIntnum1,
    const std::string & num2 
    )
    -
    - -

    Computes least common multiple (LCM) of a BigInt and a std::string value.

    -

    Uses lcm(const BigInt &, const BigInt &)

    -
    Parameters
    - - - -
    num1the first BigInt LCM parameter
    num2the second std::string LCM parameter
    -
    -
    -
    Returns
    BigInt contains value of LCM(num1, num2)
    - -
    -
    - -

    ◆ lcm() [4/5]

    - -
    -
    - - - - - - - - - - - - - - - - - - -
    BigInt lcm (const long long & num1,
    const BigIntnum2 
    )
    -
    - -

    Computes least common multiple (LCM) of a long long and a BigInt value.

    -

    Uses lcm(const BigInt &, const BigInt &)

    -
    Parameters
    - - - -
    num1the first long long LCM parameter
    num2the second BigInt LCM parameter
    -
    -
    -
    Returns
    BigInt contains value of LCM(num1, num2)
    - -
    -
    - -

    ◆ lcm() [5/5]

    - -
    -
    - - - - - - - - - - - - - - - - - - -
    BigInt lcm (const std::string & num1,
    const BigIntnum2 
    )
    -
    - -

    Computes least common multiple (LCM) of a std::string and a BigInt value.

    -

    Uses lcm(const BigInt &, const BigInt &)

    -
    Parameters
    - - - -
    num1the first std::string LCM parameter
    num2the second BigInt LCM parameter
    -
    -
    -
    Returns
    BigInt contains value of LCM(num1, num2)
    - -
    -
    - -

    ◆ pow() [1/3]

    - -
    -
    - - - - - - - - - - - - - - - - - - -
    BigInt pow (const BigIntbase,
    int exp 
    )
    -
    - -

    Performs exponentiation of BigInt with an int value.

    -

    Binary exponentation algorithm is used.

    -
    Parameters
    - - - -
    basethe BigInt value to be exponentiated
    expint value base should be raised to
    -
    -
    -
    Returns
    BigInt with value \(\text{base}^{\text{exp}}\)
    -
    Todo:
    Possibly incorporate for BigInt exponent
    -
    Warning
    logic_errors will be thrown if base is zero and exp is less than equal to zero.
    - -
    -
    - -

    ◆ pow() [2/3]

    - -
    -
    - - - - - - - - - - - - - - - - - - -
    BigInt pow (const long long & base,
    int exp 
    )
    -
    - -

    Performs exponentiation of long long with an int value.

    -
    Parameters
    - - - -
    basethe long long value to be exponentiated
    expint value base should be raised to
    -
    -
    -
    Returns
    BigInt with value \(\text{base}^{\text{exp}}\)
    -
    Warning
    logic_errors will be thrown if base is zero and exp is less than equal to zero.
    - -
    -
    - -

    ◆ pow() [3/3]

    - -
    -
    - - - - - - - - - - - - - - - - - - -
    BigInt pow (const std::string & base,
    int exp 
    )
    -
    - -

    Performs exponentiation of std::string with an int value.

    -
    Parameters
    - - - -
    basethe std::string value to be exponentiated
    expint value base should be raised to
    -
    -
    -
    Returns
    BigInt with value \(\text{base}^{\text{exp}}\)
    -
    Warning
    logic_errors will be thrown if base is zero and exp is less than equal to zero.
    - -
    -
    - -

    ◆ sqrt()

    - -
    -
    - - - - - - - - -
    BigInt sqrt (const BigIntnum)
    -
    - -

    Computes square root of BigInt value.

    -

    Uses Newton's method and returns the positive square root.

    -
    Parameters
    - - -
    numBigInt to find the square root of
    -
    -
    -
    Returns
    BigInt containing positive square root of num
    -
    Warning
    num must be non-negative
    - -
    -
    - - - - - diff --git a/docs/html/math_8hpp_source.html b/docs/html/math_8hpp_source.html deleted file mode 100644 index 7d9a5c7..0000000 --- a/docs/html/math_8hpp_source.html +++ /dev/null @@ -1,95 +0,0 @@ - - - - - - - -/Users/Mohsin/Repos/BigInt/include/functions/math.hpp Source File - - - - - - - - - - -
    -
    - - - - - - - -
    -
    Big Integer library for C++
    -
    -
    - - - - - - - - -
    -
    - - -
    - -
    - - -
    -
    -
    -
    math.hpp
    -
    -
    -Go to the documentation of this file.
    1 
    7 #ifndef BIG_INT_MATH_FUNCTIONS_HPP
    8 #define BIG_INT_MATH_FUNCTIONS_HPP
    9 
    10 #include <string>
    11 
    12 #include "functions/conversion.hpp"
    13 
    14 
    21 BigInt abs(const BigInt& num) {
    22  return num < 0 ? -num : num;
    23 }
    24 
    25 
    34 BigInt big_pow10(size_t exp) {
    35  return BigInt("1" + std::string(exp, '0'));
    36 }
    37 
    38 
    52 BigInt pow(const BigInt& base, int exp) {
    53  if (exp < 0) {
    54  if (base == 0)
    55  throw std::logic_error("Cannot divide by zero");
    56  return abs(base) == 1 ? base : 0;
    57  }
    58  if (exp == 0) {
    59  if (base == 0)
    60  throw std::logic_error("Zero cannot be raised to zero");
    61  return 1;
    62  }
    63 
    64  BigInt result = base, result_odd = 1;
    65  while (exp > 1) {
    66  if (exp % 2)
    67  result_odd *= result;
    68  result *= result;
    69  exp /= 2;
    70  }
    71 
    72  return result * result_odd;
    73 }
    74 
    75 
    86 BigInt pow(const long long& base, int exp) {
    87  return pow(BigInt(base), exp);
    88 }
    89 
    90 
    101 BigInt pow(const std::string& base, int exp) {
    102  return pow(BigInt(base), exp);
    103 
    104 }
    105 
    106 
    107 /*
    108  sqrt
    109  ----
    110  Returns the positive integer square root of a BigInt using Newton's method.
    111  NOTE: the input must be non-negative.
    112 */
    113 
    123 BigInt sqrt(const BigInt& num) {
    124  if (num < 0)
    125  throw std::invalid_argument("Cannot compute square root of a negative integer");
    126 
    127  // Optimisations for small inputs:
    128  if (num == 0)
    129  return 0;
    130  else if (num < 4)
    131  return 1;
    132  else if (num < 9)
    133  return 2;
    134  else if (num < 16)
    135  return 3;
    136 
    137  BigInt sqrt_prev = 0;
    138  // The value for `sqrt_current` is chosen close to that of the actual
    139  // square root.
    140  // Since a number's square root has at least one less than half as many
    141  // digits as the number,
    142  // sqrt_current = 10^(half_the_digits_in_num - 1)
    143  BigInt sqrt_current = big_pow10(num.to_string().size() / 2 - 1);
    144 
    145  while (abs(sqrt_current - sqrt_prev) > 1) {
    146  sqrt_prev = sqrt_current;
    147  sqrt_current = (num / sqrt_prev + sqrt_prev) / 2;
    148  }
    149 
    150  return sqrt_current;
    151 }
    152 
    153 
    163 BigInt gcd(const BigInt &num1, const BigInt &num2){
    164  BigInt abs_num1 = abs(num1);
    165  BigInt abs_num2 = abs(num2);
    166 
    167  // base cases:
    168  if (abs_num2 == 0)
    169  return abs_num1; // gcd(a, 0) = |a|
    170  if (abs_num1 == 0)
    171  return abs_num2; // gcd(0, a) = |a|
    172 
    173  BigInt remainder = abs_num2;
    174  while (remainder != 0) {
    175  remainder = abs_num1 % abs_num2;
    176  abs_num1 = abs_num2; // previous remainder
    177  abs_num2 = remainder; // current remainder
    178  }
    179 
    180  return abs_num1;
    181 }
    182 
    183 
    194 BigInt gcd(const BigInt& num1, const long long& num2){
    195  return gcd(num1, BigInt(num2));
    196 }
    197 
    198 
    209 BigInt gcd(const BigInt& num1, const std::string& num2){
    210  return gcd(num1, BigInt(num2));
    211 }
    212 
    213 
    224 BigInt gcd(const long long& num1, const BigInt& num2){
    225  return gcd(BigInt(num1), num2);
    226 }
    227 
    228 
    239 BigInt gcd(const std::string& num1, const BigInt& num2){
    240  return gcd(BigInt(num1), num2);
    241 }
    242 
    243 
    252 BigInt lcm(const BigInt& num1, const BigInt& num2) {
    253  if (num1 == 0 or num2 == 0)
    254  return 0;
    255 
    256  return abs(num1 * num2) / gcd(num1, num2);
    257 }
    258 
    259 
    269 BigInt lcm(const BigInt& num1, const long long& num2){
    270  return lcm(num1, BigInt(num2));
    271 }
    272 
    273 
    283 BigInt lcm(const BigInt& num1, const std::string& num2){
    284  return lcm(num1, BigInt(num2));
    285 }
    286 
    287 
    297 BigInt lcm(const long long& num1, const BigInt& num2){
    298  return lcm(BigInt(num1), num2);
    299 }
    300 
    301 
    311 BigInt lcm(const std::string& num1, const BigInt& num2){
    312  return lcm(BigInt(num1), num2);
    313 }
    314 
    315 
    316 #endif // BIG_INT_MATH_FUNCTIONS_HPP
    BigInt sqrt(const BigInt &num)
    Computes square root of BigInt value.
    Definition: math.hpp:123
    -
    Class that contains an arbitrarily sized integer.
    Definition: BigInt.hpp:15
    -
    BigInt lcm(const BigInt &num1, const BigInt &num2)
    Computes least common multiple (LCM) of two BigInt values.
    Definition: math.hpp:252
    -
    std::string to_string() const
    Converts BigInt into an std::string representation.
    Definition: conversion.hpp:20
    -
    BigInt big_pow10(size_t exp)
    Returns BigInt with value of .
    Definition: math.hpp:34
    -
    BigInt gcd(const BigInt &num1, const BigInt &num2)
    Computes greatest common divisor (GCD) of two BigInt values.
    Definition: math.hpp:163
    -
    BigInt pow(const BigInt &base, int exp)
    Performs exponentiation of BigInt with an int value.
    Definition: math.hpp:52
    -
    BigInt abs(const BigInt &num)
    Returns absolute value of the integer.
    Definition: math.hpp:21
    -
    Contains conversion related functions of BigInt.
    -
    - - - - diff --git a/docs/html/menu.js b/docs/html/menu.js deleted file mode 100644 index 89aaf57..0000000 --- a/docs/html/menu.js +++ /dev/null @@ -1,50 +0,0 @@ -/* - @licstart The following is the entire license notice for the - JavaScript code in this file. - - Copyright (C) 1997-2017 by Dimitri van Heesch - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this program; if not, write to the Free Software Foundation, Inc., - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - - @licend The above is the entire license notice - for the JavaScript code in this file - */ -function initMenu(relPath,searchEnabled,serverSide,searchPage,search) { - function makeTree(data,relPath) { - var result=''; - if ('children' in data) { - result+=''; - } - return result; - } - - $('#main-nav').append(makeTree(menudata,relPath)); - $('#main-nav').children(':first').addClass('sm sm-dox').attr('id','main-menu'); - if (searchEnabled) { - if (serverSide) { - $('#main-menu').append('
  • '); - } else { - $('#main-menu').append('
  • '); - } - } - $('#main-menu').smartmenus(); -} -/* @license-end */ diff --git a/docs/html/menudata.js b/docs/html/menudata.js deleted file mode 100644 index 4399a40..0000000 --- a/docs/html/menudata.js +++ /dev/null @@ -1,65 +0,0 @@ -/* -@ @licstart The following is the entire license notice for the -JavaScript code in this file. - -Copyright (C) 1997-2017 by Dimitri van Heesch - -This program is free software; you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation; either version 2 of the License, or -(at your option) any later version. - -This program is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - -You should have received a copy of the GNU General Public License along -with this program; if not, write to the Free Software Foundation, Inc., -51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - -@licend The above is the entire license notice -for the JavaScript code in this file -*/ -var menudata={children:[ -{text:"Main Page",url:"index.html"}, -{text:"Related Pages",url:"pages.html"}, -{text:"Classes",url:"annotated.html",children:[ -{text:"Class List",url:"annotated.html"}, -{text:"Class Index",url:"classes.html"}, -{text:"Class Members",url:"functions.html",children:[ -{text:"All",url:"functions.html",children:[ -{text:"b",url:"functions.html#index_b"}, -{text:"d",url:"functions.html#index_d"}, -{text:"o",url:"functions.html#index_o"}, -{text:"t",url:"functions.html#index_t"}]}, -{text:"Functions",url:"functions_func.html",children:[ -{text:"b",url:"functions_func.html#index_b"}, -{text:"d",url:"functions_func.html#index_d"}, -{text:"o",url:"functions_func.html#index_o"}, -{text:"t",url:"functions_func.html#index_t"}]}, -{text:"Related Functions",url:"functions_rela.html"}]}]}, -{text:"Files",url:"files.html",children:[ -{text:"File List",url:"files.html"}, -{text:"File Members",url:"globals.html",children:[ -{text:"All",url:"globals.html",children:[ -{text:"a",url:"globals.html#index_a"}, -{text:"b",url:"globals.html#index_b"}, -{text:"f",url:"globals.html#index_f"}, -{text:"g",url:"globals.html#index_g"}, -{text:"i",url:"globals.html#index_i"}, -{text:"l",url:"globals.html#index_l"}, -{text:"m",url:"globals.html#index_m"}, -{text:"o",url:"globals.html#index_o"}, -{text:"p",url:"globals.html#index_p"}, -{text:"s",url:"globals.html#index_s"}]}, -{text:"Functions",url:"globals_func.html",children:[ -{text:"a",url:"globals_func.html#index_a"}, -{text:"b",url:"globals_func.html#index_b"}, -{text:"g",url:"globals_func.html#index_g"}, -{text:"i",url:"globals_func.html#index_i"}, -{text:"l",url:"globals_func.html#index_l"}, -{text:"o",url:"globals_func.html#index_o"}, -{text:"p",url:"globals_func.html#index_p"}, -{text:"s",url:"globals_func.html#index_s"}]}, -{text:"Variables",url:"globals_vars.html"}]}]}]} diff --git a/docs/html/nav_f.png b/docs/html/nav_f.png deleted file mode 100644 index 72a58a5..0000000 Binary files a/docs/html/nav_f.png and /dev/null differ diff --git a/docs/html/nav_g.png b/docs/html/nav_g.png deleted file mode 100644 index 2093a23..0000000 Binary files a/docs/html/nav_g.png and /dev/null differ diff --git a/docs/html/nav_h.png b/docs/html/nav_h.png deleted file mode 100644 index 33389b1..0000000 Binary files a/docs/html/nav_h.png and /dev/null differ diff --git a/docs/html/open.png b/docs/html/open.png deleted file mode 100644 index 30f75c7..0000000 Binary files a/docs/html/open.png and /dev/null differ diff --git a/docs/html/pages.html b/docs/html/pages.html deleted file mode 100644 index 5d67a17..0000000 --- a/docs/html/pages.html +++ /dev/null @@ -1,87 +0,0 @@ - - - - - - - -Related Pages - - - - - - - - - - -
    -
    - - - - - - - -
    -
    Big Integer library for C++
    -
    -
    - - - - - - - -
    - -
    -
    - - -
    - -
    - -
    -
    -
    Related Pages
    -
    -
    -
    Here is a list of all related documentation pages:
    - - -
     Todo List
    -
    -
    - - - - diff --git a/docs/html/random_8hpp.html b/docs/html/random_8hpp.html deleted file mode 100644 index a99e3ac..0000000 --- a/docs/html/random_8hpp.html +++ /dev/null @@ -1,157 +0,0 @@ - - - - - - - -/Users/Mohsin/Repos/BigInt/include/functions/random.hpp File Reference - - - - - - - - - - -
    -
    - - - - - - - -
    -
    Big Integer library for C++
    -
    -
    - - - - - - - - -
    -
    - - -
    - -
    - - -
    -
    - -
    -
    random.hpp File Reference
    -
    -
    - -

    Random BigInt generating functions. -More...

    -
    #include <random>
    -#include <climits>
    -#include "BigInt.hpp"
    -
    -

    Go to the source code of this file.

    - - - - - -

    -Functions

    BigInt big_random (size_t num_digits=0)
     Generates a random BigInt with a specificied number of digits. More...
     
    - - - -

    -Variables

    const size_t MAX_RANDOM_LENGTH = 1000
     
    -

    Detailed Description

    -

    Random BigInt generating functions.

    -

    Function Documentation

    - -

    ◆ big_random()

    - -
    -
    - - - - - - - - -
    BigInt big_random (size_t num_digits = 0)
    -
    - -

    Generates a random BigInt with a specificied number of digits.

    -

    big_random (num_digits)

    -

    Returns a random BigInt with a specific number of digits.

    Parameters
    - - -
    num_digitsint specifying number of digits in BigInt. It is optional.
    -
    -
    -
    Returns
    BigInt with num_digits number of digits
    -
    Note
    if num_digits is not specified, the BigInt will have a random length.
    - -
    -
    -

    Variable Documentation

    - -

    ◆ MAX_RANDOM_LENGTH

    - -
    -
    - - - - -
    const size_t MAX_RANDOM_LENGTH = 1000
    -
    -

    when the number of digits are not specified, a random value is used for it which is kept below MAX_RANDOM_LENGTH

    - -
    -
    -
    - - - - diff --git a/docs/html/random_8hpp_source.html b/docs/html/random_8hpp_source.html deleted file mode 100644 index 24a9b39..0000000 --- a/docs/html/random_8hpp_source.html +++ /dev/null @@ -1,90 +0,0 @@ - - - - - - - -/Users/Mohsin/Repos/BigInt/include/functions/random.hpp Source File - - - - - - - - - - -
    -
    - - - - - - - -
    -
    Big Integer library for C++
    -
    -
    - - - - - - - - -
    -
    - - -
    - -
    - - -
    -
    -
    -
    random.hpp
    -
    -
    -Go to the documentation of this file.
    1 
    7 #ifndef BIG_INT_RANDOM_FUNCTIONS_HPP
    8 #define BIG_INT_RANDOM_FUNCTIONS_HPP
    9 
    10 #include <random>
    11 #include <climits>
    12 
    13 #include "BigInt.hpp"
    14 
    18 const size_t MAX_RANDOM_LENGTH = 1000;
    19 
    20 
    35 BigInt big_random(size_t num_digits = 0) {
    36  std::random_device rand_generator; // true random number generator
    37 
    38  if (num_digits == 0) // the number of digits were not specified
    39  // use a random number for it:
    40  num_digits = 1 + rand_generator() % MAX_RANDOM_LENGTH;
    41 
    42  BigInt big_rand;
    43  big_rand.value = ""; // clear value to append digits
    44  while (big_rand.value.size() < num_digits)
    45  big_rand.value += std::to_string(rand_generator());
    46  if (big_rand.value.size() != num_digits)
    47  big_rand.value.erase(num_digits); // erase extra digits
    48 
    49  return big_rand;
    50 }
    51 
    52 
    53 #endif // BIG_INT_RANDOM_FUNCTIONS_HPP
    const size_t MAX_RANDOM_LENGTH
    Definition: random.hpp:18
    -
    Class that contains an arbitrarily sized integer.
    Definition: BigInt.hpp:15
    -
    BigInt big_random(size_t num_digits=0)
    Generates a random BigInt with a specificied number of digits.
    Definition: random.hpp:35
    -
    Contains class declaration for BigInt.
    -
    - - - - diff --git a/docs/html/relational_8hpp.html b/docs/html/relational_8hpp.html deleted file mode 100644 index d7463f0..0000000 --- a/docs/html/relational_8hpp.html +++ /dev/null @@ -1,149 +0,0 @@ - - - - - - - -/Users/Mohsin/Repos/BigInt/include/operators/relational.hpp File Reference - - - - - - - - - - -
    -
    - - - - - - - -
    -
    Big Integer library for C++
    -
    -
    - - - - - - - - -
    -
    - - -
    - -
    - - -
    -
    - -
    -
    relational.hpp File Reference
    -
    -
    - -

    Defining the relational operators for BigInt. -More...

    - -

    Go to the source code of this file.

    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

    -Functions

    -bool operator== (const long long &lhs, const BigInt &rhs)
     Equal To operator for long long vs BigInt.
     
    -bool operator!= (const long long &lhs, const BigInt &rhs)
     Not Equal To operator for long long vs BigInt.
     
    -bool operator< (const long long &lhs, const BigInt &rhs)
     Less Than operator for long long vs BigInt.
     
    -bool operator> (const long long &lhs, const BigInt &rhs)
     Greater Than operator for long long vs BigInt.
     
    -bool operator<= (const long long &lhs, const BigInt &rhs)
     Less Than Equal To operator for long long vs BigInt.
     
    -bool operator>= (const long long &lhs, const BigInt &rhs)
     Greater Than Equal To operator for long long vs BigInt.
     
    -bool operator== (const std::string &lhs, const BigInt &rhs)
     Equal To operator for std::string vs BigInt.
     
    -bool operator!= (const std::string &lhs, const BigInt &rhs)
     Not Equal To operator for std::string vs BigInt.
     
    -bool operator< (const std::string &lhs, const BigInt &rhs)
     Less Than operator for std::string vs BigInt.
     
    -bool operator> (const std::string &lhs, const BigInt &rhs)
     Greater Than operator for std::string vs BigInt.
     
    -bool operator<= (const std::string &lhs, const BigInt &rhs)
     Less Than Equal To operator for std::string vs BigInt.
     
    -bool operator>= (const std::string &lhs, const BigInt &rhs)
     Greater Than Equal To operator for std::string vs BigInt.
     
    -

    Detailed Description

    -

    Defining the relational operators for BigInt.

    -
    - - - - diff --git a/docs/html/relational_8hpp_source.html b/docs/html/relational_8hpp_source.html deleted file mode 100644 index 9f9dad8..0000000 --- a/docs/html/relational_8hpp_source.html +++ /dev/null @@ -1,102 +0,0 @@ - - - - - - - -/Users/Mohsin/Repos/BigInt/include/operators/relational.hpp Source File - - - - - - - - - - -
    -
    - - - - - - - -
    -
    Big Integer library for C++
    -
    -
    - - - - - - - - -
    -
    - - -
    - -
    - - -
    -
    -
    -
    relational.hpp
    -
    -
    -Go to the documentation of this file.
    1 
    7 #ifndef BIG_INT_RELATIONAL_OPERATORS_HPP
    8 #define BIG_INT_RELATIONAL_OPERATORS_HPP
    9 
    10 #include "BigInt.hpp"
    12 
    13 
    14 /*
    15  BigInt == BigInt
    16  ----------------
    17 */
    18 
    22 bool BigInt::operator==(const BigInt& num) const {
    23  return (sign == num.sign) and (value == num.value);
    24 }
    25 
    26 
    30 bool BigInt::operator!=(const BigInt& num) const {
    31  return !(*this == num);
    32 }
    33 
    34 
    38 bool BigInt::operator<(const BigInt& num) const {
    39  if (sign == num.sign) {
    40  if (sign == '+') {
    41  if (value.length() == num.value.length())
    42  return value < num.value;
    43  else
    44  return value.length() < num.value.length();
    45  }
    46  else
    47  return -(*this) > -num;
    48  }
    49  else
    50  return sign == '-';
    51 }
    52 
    53 
    57 bool BigInt::operator>(const BigInt& num) const {
    58  return !((*this < num) or (*this == num));
    59 }
    60 
    61 
    65 bool BigInt::operator<=(const BigInt& num) const {
    66  return (*this < num) or (*this == num);
    67 }
    68 
    69 
    73 bool BigInt::operator>=(const BigInt& num) const {
    74  return !(*this < num);
    75 }
    76 
    77 
    81 bool BigInt::operator==(const long long& num) const {
    82  return *this == BigInt(num);
    83 }
    84 
    85 
    89 bool operator==(const long long& lhs, const BigInt& rhs) {
    90  return BigInt(lhs) == rhs;
    91 }
    92 
    93 
    97 bool BigInt::operator!=(const long long& num) const {
    98  return !(*this == BigInt(num));
    99 }
    100 
    101 
    105 bool operator!=(const long long& lhs, const BigInt& rhs) {
    106  return BigInt(lhs) != rhs;
    107 }
    108 
    109 
    113 bool BigInt::operator<(const long long& num) const {
    114  return *this < BigInt(num);
    115 }
    116 
    117 
    121 bool operator<(const long long& lhs, const BigInt& rhs) {
    122  return BigInt(lhs) < rhs;
    123 }
    124 
    125 
    129 bool BigInt::operator>(const long long& num) const {
    130  return *this > BigInt(num);
    131 }
    132 
    133 
    137 bool operator>(const long long& lhs, const BigInt& rhs) {
    138  return BigInt(lhs) > rhs;
    139 }
    140 
    141 
    145 bool BigInt::operator<=(const long long& num) const {
    146  return !(*this > BigInt(num));
    147 }
    148 
    149 
    153 bool operator<=(const long long& lhs, const BigInt& rhs) {
    154  return BigInt(lhs) <= rhs;
    155 }
    156 
    157 
    161 bool BigInt::operator>=(const long long& num) const {
    162  return !(*this < BigInt(num));
    163 }
    164 
    165 
    169 bool operator>=(const long long& lhs, const BigInt& rhs) {
    170  return BigInt(lhs) >= rhs;
    171 }
    172 
    173 
    177 bool BigInt::operator==(const std::string& num) const {
    178  return *this == BigInt(num);
    179 }
    180 
    181 
    185 bool operator==(const std::string& lhs, const BigInt& rhs) {
    186  return BigInt(lhs) == rhs;
    187 }
    188 
    189 
    193 bool BigInt::operator!=(const std::string& num) const {
    194  return !(*this == BigInt(num));
    195 }
    196 
    197 
    201 bool operator!=(const std::string& lhs, const BigInt& rhs) {
    202  return BigInt(lhs) != rhs;
    203 }
    204 
    205 
    209 bool BigInt::operator<(const std::string& num) const {
    210  return *this < BigInt(num);
    211 }
    212 
    213 
    217 bool operator<(const std::string& lhs, const BigInt& rhs) {
    218  return BigInt(lhs) < rhs;
    219 }
    220 
    221 
    225 bool BigInt::operator>(const std::string& num) const {
    226  return *this > BigInt(num);
    227 }
    228 
    229 
    233 bool operator>(const std::string& lhs, const BigInt& rhs) {
    234  return BigInt(lhs) > rhs;
    235 }
    236 
    237 
    241 bool BigInt::operator<=(const std::string& num) const {
    242  return !(*this > BigInt(num));
    243 }
    244 
    245 
    249 bool operator<=(const std::string& lhs, const BigInt& rhs) {
    250  return BigInt(lhs) <= rhs;
    251 }
    252 
    253 
    257 bool BigInt::operator>=(const std::string& num) const {
    258  return !(*this < BigInt(num));
    259 }
    260 
    261 
    265 bool operator>=(const std::string& lhs, const BigInt& rhs) {
    266  return BigInt(lhs) >= rhs;
    267 }
    268 
    269 #endif // BIG_INT_RELATIONAL_OPERATORS_HPP
    bool operator>=(const BigInt &) const
    Greater than equal to operator for two BigInt values.
    Definition: relational.hpp:73
    -
    bool operator!=(const BigInt &) const
    Not Equal To operator for two BigInt values.
    Definition: relational.hpp:30
    -
    bool operator!=(const long long &lhs, const BigInt &rhs)
    Not Equal To operator for long long vs BigInt.
    Definition: relational.hpp:105
    -
    Class that contains an arbitrarily sized integer.
    Definition: BigInt.hpp:15
    -
    BigInt()
    Default constructor for BigInt.
    Definition: constructors.hpp:19
    -
    bool operator<(const BigInt &) const
    Less than operator for two BigInt values.
    Definition: relational.hpp:38
    -
    bool operator<=(const long long &lhs, const BigInt &rhs)
    Less Than Equal To operator for long long vs BigInt.
    Definition: relational.hpp:153
    -
    bool operator>=(const long long &lhs, const BigInt &rhs)
    Greater Than Equal To operator for long long vs BigInt.
    Definition: relational.hpp:169
    -
    Defining the unary arithmetic operators for BigInt.
    -
    bool operator>(const BigInt &) const
    Greater than operator for two BigInt values.
    Definition: relational.hpp:57
    -
    bool operator>(const long long &lhs, const BigInt &rhs)
    Greater Than operator for long long vs BigInt.
    Definition: relational.hpp:137
    -
    bool operator<=(const BigInt &) const
    Less than equal to operator for two BigInt values.
    Definition: relational.hpp:65
    -
    bool operator==(const BigInt &) const
    Equal To operator for two BigInt values.
    Definition: relational.hpp:22
    -
    Contains class declaration for BigInt.
    -
    bool operator<(const long long &lhs, const BigInt &rhs)
    Less Than operator for long long vs BigInt.
    Definition: relational.hpp:121
    -
    bool operator==(const long long &lhs, const BigInt &rhs)
    Equal To operator for long long vs BigInt.
    Definition: relational.hpp:89
    -
    - - - - diff --git a/docs/html/search/all_0.html b/docs/html/search/all_0.html deleted file mode 100644 index 5125b94..0000000 --- a/docs/html/search/all_0.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/all_0.js b/docs/html/search/all_0.js deleted file mode 100644 index 53aa2f2..0000000 --- a/docs/html/search/all_0.js +++ /dev/null @@ -1,8 +0,0 @@ -var searchData= -[ - ['abs',['abs',['../math_8hpp.html#a6298699bc7f779981cb74ed78af877d2',1,'math.hpp']]], - ['add_5fleading_5fzeroes',['add_leading_zeroes',['../utility_8hpp.html#a48af5609969f9af24a959094b5494581',1,'utility.hpp']]], - ['add_5ftrailing_5fzeroes',['add_trailing_zeroes',['../utility_8hpp.html#a32557d77d297467331c04073c137e581',1,'utility.hpp']]], - ['arithmetic_5fassignment_2ehpp',['arithmetic_assignment.hpp',['../arithmetic__assignment_8hpp.html',1,'']]], - ['assignment_2ehpp',['assignment.hpp',['../assignment_8hpp.html',1,'']]] -]; diff --git a/docs/html/search/all_1.html b/docs/html/search/all_1.html deleted file mode 100644 index b8ff871..0000000 --- a/docs/html/search/all_1.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/all_1.js b/docs/html/search/all_1.js deleted file mode 100644 index 25aee81..0000000 --- a/docs/html/search/all_1.js +++ /dev/null @@ -1,8 +0,0 @@ -var searchData= -[ - ['big_5fpow10',['big_pow10',['../math_8hpp.html#a5f8d81d27acef33ef15680f52d116dbc',1,'math.hpp']]], - ['big_5frandom',['big_random',['../class_big_int.html#a33415625f48e4cfa2d63250ad5ff2439',1,'BigInt::big_random()'],['../random_8hpp.html#ab4f1ccfd0c5d4e38df5de629dc733676',1,'big_random(): random.hpp']]], - ['bigint',['BigInt',['../class_big_int.html',1,'BigInt'],['../class_big_int.html#af677021c0987fc2a48da06837ed29c58',1,'BigInt::BigInt()'],['../class_big_int.html#a51f3f8b9a1a90485f16cfed2e2322f9c',1,'BigInt::BigInt(const BigInt &)'],['../class_big_int.html#aa451e6a9a482ce230825d2a11a60cb75',1,'BigInt::BigInt(const long long &)'],['../class_big_int.html#a0a497b5221396d7a6d2b3e0f2269895f',1,'BigInt::BigInt(const std::string &)']]], - ['bigint_2ehpp',['BigInt.hpp',['../_big_int_8hpp.html',1,'']]], - ['binary_5farithmetic_2ehpp',['binary_arithmetic.hpp',['../binary__arithmetic_8hpp.html',1,'']]] -]; diff --git a/docs/html/search/all_2.html b/docs/html/search/all_2.html deleted file mode 100644 index 2f17735..0000000 --- a/docs/html/search/all_2.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/all_2.js b/docs/html/search/all_2.js deleted file mode 100644 index 39567c5..0000000 --- a/docs/html/search/all_2.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['constructors_2ehpp',['constructors.hpp',['../constructors_8hpp.html',1,'']]], - ['conversion_2ehpp',['conversion.hpp',['../conversion_8hpp.html',1,'']]] -]; diff --git a/docs/html/search/all_3.html b/docs/html/search/all_3.html deleted file mode 100644 index a3e6f7d..0000000 --- a/docs/html/search/all_3.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/all_3.js b/docs/html/search/all_3.js deleted file mode 100644 index 59ad26c..0000000 --- a/docs/html/search/all_3.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['divide',['divide',['../class_big_int.html#aa78c09426b0a9c0f08e1af8250cb143b',1,'BigInt']]] -]; diff --git a/docs/html/search/all_4.html b/docs/html/search/all_4.html deleted file mode 100644 index 6452295..0000000 --- a/docs/html/search/all_4.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/all_4.js b/docs/html/search/all_4.js deleted file mode 100644 index 27e3cc2..0000000 --- a/docs/html/search/all_4.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['floor_5fsqrt_5fllong_5fmax',['FLOOR_SQRT_LLONG_MAX',['../binary__arithmetic_8hpp.html#ad07868eab18fb7d69e30e2d2fdd7b475',1,'binary_arithmetic.hpp']]] -]; diff --git a/docs/html/search/all_5.html b/docs/html/search/all_5.html deleted file mode 100644 index e59e1d5..0000000 --- a/docs/html/search/all_5.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/all_5.js b/docs/html/search/all_5.js deleted file mode 100644 index 8c84d81..0000000 --- a/docs/html/search/all_5.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['gcd',['gcd',['../math_8hpp.html#a665a9459fc6bf9906f63435013e998b0',1,'gcd(const BigInt &num1, const BigInt &num2): math.hpp'],['../math_8hpp.html#a22f78b7f13f8a65699ab6b896cc91a9f',1,'gcd(const BigInt &num1, const long long &num2): math.hpp'],['../math_8hpp.html#ab0211f9d8641b4ab5e3a5a110f661f56',1,'gcd(const BigInt &num1, const std::string &num2): math.hpp'],['../math_8hpp.html#a0c16450230a29ff6d3c63e161cc72cbd',1,'gcd(const long long &num1, const BigInt &num2): math.hpp'],['../math_8hpp.html#a9bb0c923c8103e2958bcd93326d58bd2',1,'gcd(const std::string &num1, const BigInt &num2): math.hpp']]], - ['get_5flarger_5fand_5fsmaller',['get_larger_and_smaller',['../utility_8hpp.html#a5aaf88447098d9a36d0c6a1ab918abf3',1,'utility.hpp']]] -]; diff --git a/docs/html/search/all_6.html b/docs/html/search/all_6.html deleted file mode 100644 index f75a754..0000000 --- a/docs/html/search/all_6.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/all_6.js b/docs/html/search/all_6.js deleted file mode 100644 index 334fd13..0000000 --- a/docs/html/search/all_6.js +++ /dev/null @@ -1,7 +0,0 @@ -var searchData= -[ - ['increment_5fdecrement_2ehpp',['increment_decrement.hpp',['../increment__decrement_8hpp.html',1,'']]], - ['io_5fstream_2ehpp',['io_stream.hpp',['../io__stream_8hpp.html',1,'']]], - ['is_5fpower_5fof_5f10',['is_power_of_10',['../utility_8hpp.html#acc56ae9b79ab49d5dfb718fe37b63b76',1,'utility.hpp']]], - ['is_5fvalid_5fnumber',['is_valid_number',['../utility_8hpp.html#aeb56a494cf91b723c9a4c819c2b6c904',1,'utility.hpp']]] -]; diff --git a/docs/html/search/all_7.html b/docs/html/search/all_7.html deleted file mode 100644 index 88acd94..0000000 --- a/docs/html/search/all_7.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/all_7.js b/docs/html/search/all_7.js deleted file mode 100644 index fa5faa1..0000000 --- a/docs/html/search/all_7.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['lcm',['lcm',['../math_8hpp.html#ad986d61b85b9550072667237555ded0e',1,'lcm(const BigInt &num1, const BigInt &num2): math.hpp'],['../math_8hpp.html#ac8d04527404b9e6b408a38856aafeda7',1,'lcm(const BigInt &num1, const long long &num2): math.hpp'],['../math_8hpp.html#a3fe83c38c77572ba8bfa26c7661a9e2f',1,'lcm(const BigInt &num1, const std::string &num2): math.hpp'],['../math_8hpp.html#ae5a4074a93e9d94398d5ce4a4f8c724c',1,'lcm(const long long &num1, const BigInt &num2): math.hpp'],['../math_8hpp.html#aa1a731dc80801edc1d4d16073c3cdd86',1,'lcm(const std::string &num1, const BigInt &num2): math.hpp']]] -]; diff --git a/docs/html/search/all_8.html b/docs/html/search/all_8.html deleted file mode 100644 index b74d5fd..0000000 --- a/docs/html/search/all_8.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/all_8.js b/docs/html/search/all_8.js deleted file mode 100644 index ebea9ef..0000000 --- a/docs/html/search/all_8.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['math_2ehpp',['math.hpp',['../math_8hpp.html',1,'']]], - ['max_5frandom_5flength',['MAX_RANDOM_LENGTH',['../random_8hpp.html#a2e260cf435898b1ee04502d142674c16',1,'random.hpp']]] -]; diff --git a/docs/html/search/all_9.html b/docs/html/search/all_9.html deleted file mode 100644 index 95e88dd..0000000 --- a/docs/html/search/all_9.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/all_9.js b/docs/html/search/all_9.js deleted file mode 100644 index a4888e4..0000000 --- a/docs/html/search/all_9.js +++ /dev/null @@ -1,24 +0,0 @@ -var searchData= -[ - ['operator_21_3d',['operator!=',['../class_big_int.html#aa90976def3543a53e03436f9542d7172',1,'BigInt::operator!=(const BigInt &) const'],['../class_big_int.html#a3e8408491d2d9bc2aa578f59d5c8b3fa',1,'BigInt::operator!=(const long long &) const'],['../class_big_int.html#ad92ab10471dd643665eeec67987de67b',1,'BigInt::operator!=(const std::string &) const'],['../relational_8hpp.html#a3034b73d02b27ca95c7719072e597626',1,'operator!=(const long long &lhs, const BigInt &rhs): relational.hpp'],['../relational_8hpp.html#a70ae3df42760da3c7193455cda56eb9f',1,'operator!=(const std::string &lhs, const BigInt &rhs): relational.hpp']]], - ['operator_25',['operator%',['../class_big_int.html#a8e1b528f979b74b8726220829f6dc074',1,'BigInt::operator%(const BigInt &) const'],['../class_big_int.html#ad626db3195815455e7dc13ae8c18b88c',1,'BigInt::operator%(const long long &) const'],['../class_big_int.html#a076c84b07d32aedd90e99bba6678fcf9',1,'BigInt::operator%(const std::string &) const'],['../binary__arithmetic_8hpp.html#a5db7aad9b346ac23fa3066d5a866412f',1,'operator%(const long long &lhs, const BigInt &rhs): binary_arithmetic.hpp'],['../binary__arithmetic_8hpp.html#ab5baf84e3d5f75ba8396fb56f33a6daf',1,'operator%(const std::string &lhs, const BigInt &rhs): binary_arithmetic.hpp']]], - ['operator_25_3d',['operator%=',['../class_big_int.html#a526f1daf277297c800fe3c8ed98d8678',1,'BigInt::operator%=(const BigInt &)'],['../class_big_int.html#a5ff0fb1c977e243eb06b3f80e72e33f0',1,'BigInt::operator%=(const long long &)'],['../class_big_int.html#a9e2a53ecb8ae064b62508683062539d0',1,'BigInt::operator%=(const std::string &)']]], - ['operator_2a',['operator*',['../class_big_int.html#a5098d893c7f1a55259751f1d736bcde4',1,'BigInt::operator*(const BigInt &) const'],['../class_big_int.html#a59d876234db40d3813d6da3e128c1354',1,'BigInt::operator*(const long long &) const'],['../class_big_int.html#a4d7bbe1de7ab5346d7c6199a4245677a',1,'BigInt::operator*(const std::string &) const'],['../binary__arithmetic_8hpp.html#a698fd87d6b0739e2c466ffe9d51785e9',1,'operator*(const long long &lhs, const BigInt &rhs): binary_arithmetic.hpp'],['../binary__arithmetic_8hpp.html#a3cc4bf898485f3841e577384e2ffb16e',1,'operator*(const std::string &lhs, const BigInt &rhs): binary_arithmetic.hpp']]], - ['operator_2a_3d',['operator*=',['../class_big_int.html#a7879601a32aed7c7b8260cda1b84f923',1,'BigInt::operator*=(const BigInt &)'],['../class_big_int.html#a1d432614a52fd006d3b14322fbe608b9',1,'BigInt::operator*=(const long long &)'],['../class_big_int.html#a564f8e68b8fd3015d7c04e35ca896f02',1,'BigInt::operator*=(const std::string &)']]], - ['operator_2b',['operator+',['../class_big_int.html#a34c8cba8f37b03e6973398585f7f8927',1,'BigInt::operator+() const'],['../class_big_int.html#a9061b1429cd008ceb98489aed9f19456',1,'BigInt::operator+(const BigInt &) const'],['../class_big_int.html#ab294348f27c37fc6b0b240af2ad4688e',1,'BigInt::operator+(const long long &) const'],['../class_big_int.html#a70cc64c45e815e7c1477c3ab2af77426',1,'BigInt::operator+(const std::string &) const'],['../binary__arithmetic_8hpp.html#a3370ae5b4a55a1e95cbd6cafb9825954',1,'operator+(const long long &lhs, const BigInt &rhs): binary_arithmetic.hpp'],['../binary__arithmetic_8hpp.html#a853d1b05bf5546b5392e5988592d59d8',1,'operator+(const std::string &lhs, const BigInt &rhs): binary_arithmetic.hpp']]], - ['operator_2b_2b',['operator++',['../class_big_int.html#a0f1a8a43867f25c8df48e7747012536f',1,'BigInt::operator++()'],['../class_big_int.html#a7120696c07c413340246a61eb209a541',1,'BigInt::operator++(int)']]], - ['operator_2b_3d',['operator+=',['../class_big_int.html#ad9da0ba0acddb753a26422f5ef878ac9',1,'BigInt::operator+=(const BigInt &)'],['../class_big_int.html#a740520b5b3338457c5f529ea59822985',1,'BigInt::operator+=(const long long &)'],['../class_big_int.html#a6d01af5292821550b7f8bb7f5c69682b',1,'BigInt::operator+=(const std::string &)']]], - ['operator_2d',['operator-',['../class_big_int.html#a4a4ded170439fee88f133d0202b5c182',1,'BigInt::operator-() const'],['../class_big_int.html#a7249d866644c0e5646ab445e8612fba8',1,'BigInt::operator-(const BigInt &) const'],['../class_big_int.html#ae698638ca810ab0be3d56d3990c95c98',1,'BigInt::operator-(const long long &) const'],['../class_big_int.html#afc41f9781390e8ea4a3af671bbfe00aa',1,'BigInt::operator-(const std::string &) const'],['../binary__arithmetic_8hpp.html#a30938daf1671d2987298cbb25489f5ea',1,'operator-(const long long &lhs, const BigInt &rhs): binary_arithmetic.hpp'],['../binary__arithmetic_8hpp.html#a6a6d681ba9f93dcb2fea2c1d4e673962',1,'operator-(const std::string &lhs, const BigInt &rhs): binary_arithmetic.hpp']]], - ['operator_2d_2d',['operator--',['../class_big_int.html#aed992537fac59f8c794fc24d10baf199',1,'BigInt::operator--()'],['../class_big_int.html#a6ef5639e9f2cb2226f8611bb39c6c663',1,'BigInt::operator--(int)']]], - ['operator_2d_3d',['operator-=',['../class_big_int.html#a1580ecd591d7ece24212c614ddbaac8e',1,'BigInt::operator-=(const BigInt &)'],['../class_big_int.html#a241c4bb5929eb235c39c6433f4af4a6a',1,'BigInt::operator-=(const long long &)'],['../class_big_int.html#aee2d40c876b82640929129dc076d41e9',1,'BigInt::operator-=(const std::string &)']]], - ['operator_2f',['operator/',['../class_big_int.html#ada6761cba4a4278f00e582a67ed50613',1,'BigInt::operator/(const BigInt &) const'],['../class_big_int.html#a13d319b0e368d5488a675c31de515e08',1,'BigInt::operator/(const long long &) const'],['../class_big_int.html#a2b9f4d0435cb4e7d1621a56b0658d9ad',1,'BigInt::operator/(const std::string &) const'],['../binary__arithmetic_8hpp.html#ae07e238ed266aeb18464edae6619559e',1,'operator/(const long long &lhs, const BigInt &rhs): binary_arithmetic.hpp'],['../binary__arithmetic_8hpp.html#af871685a61a35d325e853f7a9da91ec4',1,'operator/(const std::string &lhs, const BigInt &rhs): binary_arithmetic.hpp']]], - ['operator_2f_3d',['operator/=',['../class_big_int.html#a462f752f3d23f7ea2687ae7e1ba925ec',1,'BigInt::operator/=(const BigInt &)'],['../class_big_int.html#ae4ba27b9e1d5eaf20cf1384a86a48195',1,'BigInt::operator/=(const long long &)'],['../class_big_int.html#ab0da658e91c27c0f17235d8a62cc8db3',1,'BigInt::operator/=(const std::string &)']]], - ['operator_3c',['operator<',['../class_big_int.html#ae12075707da6d7bdac8f2d8668873d47',1,'BigInt::operator<(const BigInt &) const'],['../class_big_int.html#abd4ec0c6b0cb3d5da747e2beb1af6a93',1,'BigInt::operator<(const long long &) const'],['../class_big_int.html#ab2023a20de7192c4dfd7e89ecf2b9138',1,'BigInt::operator<(const std::string &) const'],['../relational_8hpp.html#a6fbc54db53ddcd09698cf5e93dd7840b',1,'operator<(const long long &lhs, const BigInt &rhs): relational.hpp'],['../relational_8hpp.html#a20a8f6965172c60933f85f6e5236670e',1,'operator<(const std::string &lhs, const BigInt &rhs): relational.hpp']]], - ['operator_3c_3c',['operator<<',['../class_big_int.html#a61858213524e69594b97acc0884974c9',1,'BigInt::operator<<()'],['../io__stream_8hpp.html#a6feaf90cc45b9586bcb059c454168150',1,'operator<<(): io_stream.hpp']]], - ['operator_3c_3d',['operator<=',['../class_big_int.html#aad1809670bf2e80e187a511b38b7e37d',1,'BigInt::operator<=(const BigInt &) const'],['../class_big_int.html#a6a908aa26d8def54a0d21c57b6ad08a1',1,'BigInt::operator<=(const long long &) const'],['../class_big_int.html#ae817730a2f5278ea29b8c800afeaaaa0',1,'BigInt::operator<=(const std::string &) const'],['../relational_8hpp.html#a071d7a32d241c9f008b2726d2c4e531b',1,'operator<=(const long long &lhs, const BigInt &rhs): relational.hpp'],['../relational_8hpp.html#aaece4d933c8d4cf9b05a92c5af5e5c98',1,'operator<=(const std::string &lhs, const BigInt &rhs): relational.hpp']]], - ['operator_3d',['operator=',['../class_big_int.html#ac6e8a29bee594029dc3bb2c9c794e259',1,'BigInt::operator=(const BigInt &)'],['../class_big_int.html#af1af1887f936042b018da4c06d51cd39',1,'BigInt::operator=(const long long &)'],['../class_big_int.html#a763d60d73f762f5be7a272ec44487556',1,'BigInt::operator=(const std::string &)']]], - ['operator_3d_3d',['operator==',['../class_big_int.html#a4420176089729ea0a0014e1d033307d3',1,'BigInt::operator==(const BigInt &) const'],['../class_big_int.html#aee8e0bac33be10dcd0f3fc50c3ecdc3d',1,'BigInt::operator==(const long long &) const'],['../class_big_int.html#ad566a44cd68b8c9101f219749fff4e0d',1,'BigInt::operator==(const std::string &) const'],['../relational_8hpp.html#a7241256ce42ebf32025be7463f2206cb',1,'operator==(const long long &lhs, const BigInt &rhs): relational.hpp'],['../relational_8hpp.html#ab647147b4f57b346812fa3ce7b9d454c',1,'operator==(const std::string &lhs, const BigInt &rhs): relational.hpp']]], - ['operator_3e',['operator>',['../class_big_int.html#a56e910608a29f0bff111fa8c5b82e891',1,'BigInt::operator>(const BigInt &) const'],['../class_big_int.html#aff41228b32bd2a623a6fb1e3c49a9148',1,'BigInt::operator>(const long long &) const'],['../class_big_int.html#ab346f6fa11fba7ee3ce51fb4ccf6b2bb',1,'BigInt::operator>(const std::string &) const'],['../relational_8hpp.html#add8be7262977696132cda750e38a452e',1,'operator>(const long long &lhs, const BigInt &rhs): relational.hpp'],['../relational_8hpp.html#a1eeac8d555d7cd7b1d31ffaef2e6c1e5',1,'operator>(const std::string &lhs, const BigInt &rhs): relational.hpp']]], - ['operator_3e_3d',['operator>=',['../class_big_int.html#afdced5604a4e64d4d800a30991847a03',1,'BigInt::operator>=(const BigInt &) const'],['../class_big_int.html#a36080ae3b0da1b2827d5fe63c9708a5a',1,'BigInt::operator>=(const long long &) const'],['../class_big_int.html#aeede36984a8dcc6b5f16857fde86b487',1,'BigInt::operator>=(const std::string &) const'],['../relational_8hpp.html#ae4daaeefda1751987586a2d1499eed0c',1,'operator>=(const long long &lhs, const BigInt &rhs): relational.hpp'],['../relational_8hpp.html#a39489df52a40cd4c7ff3bf0a1999b2a3',1,'operator>=(const std::string &lhs, const BigInt &rhs): relational.hpp']]], - ['operator_3e_3e',['operator>>',['../class_big_int.html#a2b2caad36116d3ebf27c9ea6e450e560',1,'BigInt::operator>>()'],['../io__stream_8hpp.html#ad85e9c599510b60d09f9b3ed19a0ae37',1,'operator>>(): io_stream.hpp']]] -]; diff --git a/docs/html/search/all_a.html b/docs/html/search/all_a.html deleted file mode 100644 index 3148a8e..0000000 --- a/docs/html/search/all_a.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/all_a.js b/docs/html/search/all_a.js deleted file mode 100644 index 80bc0ed..0000000 --- a/docs/html/search/all_a.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['pow',['pow',['../math_8hpp.html#a481d1f2a5da56c21707d96db8fbdd117',1,'pow(const BigInt &base, int exp): math.hpp'],['../math_8hpp.html#a1c49c5bbdd2631b0d5bf298d60d5e5d3',1,'pow(const long long &base, int exp): math.hpp'],['../math_8hpp.html#ac0e322e64a440d9d6772ac706926cd1e',1,'pow(const std::string &base, int exp): math.hpp']]] -]; diff --git a/docs/html/search/all_b.html b/docs/html/search/all_b.html deleted file mode 100644 index f2a3c8d..0000000 --- a/docs/html/search/all_b.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/all_b.js b/docs/html/search/all_b.js deleted file mode 100644 index ed5c393..0000000 --- a/docs/html/search/all_b.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['random_2ehpp',['random.hpp',['../random_8hpp.html',1,'']]], - ['relational_2ehpp',['relational.hpp',['../relational_8hpp.html',1,'']]] -]; diff --git a/docs/html/search/all_c.html b/docs/html/search/all_c.html deleted file mode 100644 index 6376810..0000000 --- a/docs/html/search/all_c.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/all_c.js b/docs/html/search/all_c.js deleted file mode 100644 index 7143f3f..0000000 --- a/docs/html/search/all_c.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['sqrt',['sqrt',['../math_8hpp.html#abf73aa7c2871b1741c4f8cdfed311630',1,'math.hpp']]], - ['strip_5fleading_5fzeroes',['strip_leading_zeroes',['../utility_8hpp.html#a0076804a81f52fbd6cff85a4e1d79cc1',1,'utility.hpp']]] -]; diff --git a/docs/html/search/all_d.html b/docs/html/search/all_d.html deleted file mode 100644 index cc52c79..0000000 --- a/docs/html/search/all_d.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/all_d.js b/docs/html/search/all_d.js deleted file mode 100644 index a01bfa9..0000000 --- a/docs/html/search/all_d.js +++ /dev/null @@ -1,8 +0,0 @@ -var searchData= -[ - ['to_5fint',['to_int',['../class_big_int.html#a35a5f2a71ef11861475a59cf0e0ac700',1,'BigInt']]], - ['to_5flong',['to_long',['../class_big_int.html#a38480fcfc937aa0f5c2e86dac8a1dd7c',1,'BigInt']]], - ['to_5flong_5flong',['to_long_long',['../class_big_int.html#ac4f41fb03eabbbf6f98869d296d8845a',1,'BigInt']]], - ['to_5fstring',['to_string',['../class_big_int.html#a1e3ed7be0093cfa492a79c5352ccad71',1,'BigInt']]], - ['todo_20list',['Todo List',['../todo.html',1,'']]] -]; diff --git a/docs/html/search/all_e.html b/docs/html/search/all_e.html deleted file mode 100644 index 85b39bd..0000000 --- a/docs/html/search/all_e.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/all_e.js b/docs/html/search/all_e.js deleted file mode 100644 index e7bc4a6..0000000 --- a/docs/html/search/all_e.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['unary_5farithmetic_2ehpp',['unary_arithmetic.hpp',['../unary__arithmetic_8hpp.html',1,'']]], - ['utility_2ehpp',['utility.hpp',['../utility_8hpp.html',1,'']]] -]; diff --git a/docs/html/search/classes_0.html b/docs/html/search/classes_0.html deleted file mode 100644 index e935fdf..0000000 --- a/docs/html/search/classes_0.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/classes_0.js b/docs/html/search/classes_0.js deleted file mode 100644 index 49e3533..0000000 --- a/docs/html/search/classes_0.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['bigint',['BigInt',['../class_big_int.html',1,'']]] -]; diff --git a/docs/html/search/close.png b/docs/html/search/close.png deleted file mode 100644 index 9342d3d..0000000 Binary files a/docs/html/search/close.png and /dev/null differ diff --git a/docs/html/search/files_0.html b/docs/html/search/files_0.html deleted file mode 100644 index 49606c8..0000000 --- a/docs/html/search/files_0.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/files_0.js b/docs/html/search/files_0.js deleted file mode 100644 index 0a1dcd8..0000000 --- a/docs/html/search/files_0.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['arithmetic_5fassignment_2ehpp',['arithmetic_assignment.hpp',['../arithmetic__assignment_8hpp.html',1,'']]], - ['assignment_2ehpp',['assignment.hpp',['../assignment_8hpp.html',1,'']]] -]; diff --git a/docs/html/search/files_1.html b/docs/html/search/files_1.html deleted file mode 100644 index c887174..0000000 --- a/docs/html/search/files_1.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/files_1.js b/docs/html/search/files_1.js deleted file mode 100644 index 4cfcc58..0000000 --- a/docs/html/search/files_1.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['bigint_2ehpp',['BigInt.hpp',['../_big_int_8hpp.html',1,'']]], - ['binary_5farithmetic_2ehpp',['binary_arithmetic.hpp',['../binary__arithmetic_8hpp.html',1,'']]] -]; diff --git a/docs/html/search/files_2.html b/docs/html/search/files_2.html deleted file mode 100644 index 99bdf21..0000000 --- a/docs/html/search/files_2.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/files_2.js b/docs/html/search/files_2.js deleted file mode 100644 index 39567c5..0000000 --- a/docs/html/search/files_2.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['constructors_2ehpp',['constructors.hpp',['../constructors_8hpp.html',1,'']]], - ['conversion_2ehpp',['conversion.hpp',['../conversion_8hpp.html',1,'']]] -]; diff --git a/docs/html/search/files_3.html b/docs/html/search/files_3.html deleted file mode 100644 index f8e543a..0000000 --- a/docs/html/search/files_3.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/files_3.js b/docs/html/search/files_3.js deleted file mode 100644 index 573ef65..0000000 --- a/docs/html/search/files_3.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['increment_5fdecrement_2ehpp',['increment_decrement.hpp',['../increment__decrement_8hpp.html',1,'']]], - ['io_5fstream_2ehpp',['io_stream.hpp',['../io__stream_8hpp.html',1,'']]] -]; diff --git a/docs/html/search/files_4.html b/docs/html/search/files_4.html deleted file mode 100644 index 2ebb46c..0000000 --- a/docs/html/search/files_4.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/files_4.js b/docs/html/search/files_4.js deleted file mode 100644 index cf1dec6..0000000 --- a/docs/html/search/files_4.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['math_2ehpp',['math.hpp',['../math_8hpp.html',1,'']]] -]; diff --git a/docs/html/search/files_5.html b/docs/html/search/files_5.html deleted file mode 100644 index 268b7eb..0000000 --- a/docs/html/search/files_5.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/files_5.js b/docs/html/search/files_5.js deleted file mode 100644 index ed5c393..0000000 --- a/docs/html/search/files_5.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['random_2ehpp',['random.hpp',['../random_8hpp.html',1,'']]], - ['relational_2ehpp',['relational.hpp',['../relational_8hpp.html',1,'']]] -]; diff --git a/docs/html/search/files_6.html b/docs/html/search/files_6.html deleted file mode 100644 index 98fc666..0000000 --- a/docs/html/search/files_6.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/files_6.js b/docs/html/search/files_6.js deleted file mode 100644 index e7bc4a6..0000000 --- a/docs/html/search/files_6.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['unary_5farithmetic_2ehpp',['unary_arithmetic.hpp',['../unary__arithmetic_8hpp.html',1,'']]], - ['utility_2ehpp',['utility.hpp',['../utility_8hpp.html',1,'']]] -]; diff --git a/docs/html/search/functions_0.html b/docs/html/search/functions_0.html deleted file mode 100644 index 0539c8c..0000000 --- a/docs/html/search/functions_0.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/functions_0.js b/docs/html/search/functions_0.js deleted file mode 100644 index 9c38aad..0000000 --- a/docs/html/search/functions_0.js +++ /dev/null @@ -1,6 +0,0 @@ -var searchData= -[ - ['abs',['abs',['../math_8hpp.html#a6298699bc7f779981cb74ed78af877d2',1,'math.hpp']]], - ['add_5fleading_5fzeroes',['add_leading_zeroes',['../utility_8hpp.html#a48af5609969f9af24a959094b5494581',1,'utility.hpp']]], - ['add_5ftrailing_5fzeroes',['add_trailing_zeroes',['../utility_8hpp.html#a32557d77d297467331c04073c137e581',1,'utility.hpp']]] -]; diff --git a/docs/html/search/functions_1.html b/docs/html/search/functions_1.html deleted file mode 100644 index 4878b3d..0000000 --- a/docs/html/search/functions_1.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/functions_1.js b/docs/html/search/functions_1.js deleted file mode 100644 index 305266e..0000000 --- a/docs/html/search/functions_1.js +++ /dev/null @@ -1,6 +0,0 @@ -var searchData= -[ - ['big_5fpow10',['big_pow10',['../math_8hpp.html#a5f8d81d27acef33ef15680f52d116dbc',1,'math.hpp']]], - ['big_5frandom',['big_random',['../random_8hpp.html#ab4f1ccfd0c5d4e38df5de629dc733676',1,'random.hpp']]], - ['bigint',['BigInt',['../class_big_int.html#af677021c0987fc2a48da06837ed29c58',1,'BigInt::BigInt()'],['../class_big_int.html#a51f3f8b9a1a90485f16cfed2e2322f9c',1,'BigInt::BigInt(const BigInt &)'],['../class_big_int.html#aa451e6a9a482ce230825d2a11a60cb75',1,'BigInt::BigInt(const long long &)'],['../class_big_int.html#a0a497b5221396d7a6d2b3e0f2269895f',1,'BigInt::BigInt(const std::string &)']]] -]; diff --git a/docs/html/search/functions_2.html b/docs/html/search/functions_2.html deleted file mode 100644 index 67d2a39..0000000 --- a/docs/html/search/functions_2.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/functions_2.js b/docs/html/search/functions_2.js deleted file mode 100644 index 59ad26c..0000000 --- a/docs/html/search/functions_2.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['divide',['divide',['../class_big_int.html#aa78c09426b0a9c0f08e1af8250cb143b',1,'BigInt']]] -]; diff --git a/docs/html/search/functions_3.html b/docs/html/search/functions_3.html deleted file mode 100644 index 1f0eedb..0000000 --- a/docs/html/search/functions_3.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/functions_3.js b/docs/html/search/functions_3.js deleted file mode 100644 index 8c84d81..0000000 --- a/docs/html/search/functions_3.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['gcd',['gcd',['../math_8hpp.html#a665a9459fc6bf9906f63435013e998b0',1,'gcd(const BigInt &num1, const BigInt &num2): math.hpp'],['../math_8hpp.html#a22f78b7f13f8a65699ab6b896cc91a9f',1,'gcd(const BigInt &num1, const long long &num2): math.hpp'],['../math_8hpp.html#ab0211f9d8641b4ab5e3a5a110f661f56',1,'gcd(const BigInt &num1, const std::string &num2): math.hpp'],['../math_8hpp.html#a0c16450230a29ff6d3c63e161cc72cbd',1,'gcd(const long long &num1, const BigInt &num2): math.hpp'],['../math_8hpp.html#a9bb0c923c8103e2958bcd93326d58bd2',1,'gcd(const std::string &num1, const BigInt &num2): math.hpp']]], - ['get_5flarger_5fand_5fsmaller',['get_larger_and_smaller',['../utility_8hpp.html#a5aaf88447098d9a36d0c6a1ab918abf3',1,'utility.hpp']]] -]; diff --git a/docs/html/search/functions_4.html b/docs/html/search/functions_4.html deleted file mode 100644 index c5bf87a..0000000 --- a/docs/html/search/functions_4.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/functions_4.js b/docs/html/search/functions_4.js deleted file mode 100644 index f1848f7..0000000 --- a/docs/html/search/functions_4.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['is_5fpower_5fof_5f10',['is_power_of_10',['../utility_8hpp.html#acc56ae9b79ab49d5dfb718fe37b63b76',1,'utility.hpp']]], - ['is_5fvalid_5fnumber',['is_valid_number',['../utility_8hpp.html#aeb56a494cf91b723c9a4c819c2b6c904',1,'utility.hpp']]] -]; diff --git a/docs/html/search/functions_5.html b/docs/html/search/functions_5.html deleted file mode 100644 index a34446c..0000000 --- a/docs/html/search/functions_5.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/functions_5.js b/docs/html/search/functions_5.js deleted file mode 100644 index fa5faa1..0000000 --- a/docs/html/search/functions_5.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['lcm',['lcm',['../math_8hpp.html#ad986d61b85b9550072667237555ded0e',1,'lcm(const BigInt &num1, const BigInt &num2): math.hpp'],['../math_8hpp.html#ac8d04527404b9e6b408a38856aafeda7',1,'lcm(const BigInt &num1, const long long &num2): math.hpp'],['../math_8hpp.html#a3fe83c38c77572ba8bfa26c7661a9e2f',1,'lcm(const BigInt &num1, const std::string &num2): math.hpp'],['../math_8hpp.html#ae5a4074a93e9d94398d5ce4a4f8c724c',1,'lcm(const long long &num1, const BigInt &num2): math.hpp'],['../math_8hpp.html#aa1a731dc80801edc1d4d16073c3cdd86',1,'lcm(const std::string &num1, const BigInt &num2): math.hpp']]] -]; diff --git a/docs/html/search/functions_6.html b/docs/html/search/functions_6.html deleted file mode 100644 index 6fd4b1f..0000000 --- a/docs/html/search/functions_6.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/functions_6.js b/docs/html/search/functions_6.js deleted file mode 100644 index b8ccd4a..0000000 --- a/docs/html/search/functions_6.js +++ /dev/null @@ -1,24 +0,0 @@ -var searchData= -[ - ['operator_21_3d',['operator!=',['../class_big_int.html#aa90976def3543a53e03436f9542d7172',1,'BigInt::operator!=(const BigInt &) const'],['../class_big_int.html#a3e8408491d2d9bc2aa578f59d5c8b3fa',1,'BigInt::operator!=(const long long &) const'],['../class_big_int.html#ad92ab10471dd643665eeec67987de67b',1,'BigInt::operator!=(const std::string &) const'],['../relational_8hpp.html#a3034b73d02b27ca95c7719072e597626',1,'operator!=(const long long &lhs, const BigInt &rhs): relational.hpp'],['../relational_8hpp.html#a70ae3df42760da3c7193455cda56eb9f',1,'operator!=(const std::string &lhs, const BigInt &rhs): relational.hpp']]], - ['operator_25',['operator%',['../class_big_int.html#a8e1b528f979b74b8726220829f6dc074',1,'BigInt::operator%(const BigInt &) const'],['../class_big_int.html#ad626db3195815455e7dc13ae8c18b88c',1,'BigInt::operator%(const long long &) const'],['../class_big_int.html#a076c84b07d32aedd90e99bba6678fcf9',1,'BigInt::operator%(const std::string &) const'],['../binary__arithmetic_8hpp.html#a5db7aad9b346ac23fa3066d5a866412f',1,'operator%(const long long &lhs, const BigInt &rhs): binary_arithmetic.hpp'],['../binary__arithmetic_8hpp.html#ab5baf84e3d5f75ba8396fb56f33a6daf',1,'operator%(const std::string &lhs, const BigInt &rhs): binary_arithmetic.hpp']]], - ['operator_25_3d',['operator%=',['../class_big_int.html#a526f1daf277297c800fe3c8ed98d8678',1,'BigInt::operator%=(const BigInt &)'],['../class_big_int.html#a5ff0fb1c977e243eb06b3f80e72e33f0',1,'BigInt::operator%=(const long long &)'],['../class_big_int.html#a9e2a53ecb8ae064b62508683062539d0',1,'BigInt::operator%=(const std::string &)']]], - ['operator_2a',['operator*',['../class_big_int.html#a5098d893c7f1a55259751f1d736bcde4',1,'BigInt::operator*(const BigInt &) const'],['../class_big_int.html#a59d876234db40d3813d6da3e128c1354',1,'BigInt::operator*(const long long &) const'],['../class_big_int.html#a4d7bbe1de7ab5346d7c6199a4245677a',1,'BigInt::operator*(const std::string &) const'],['../binary__arithmetic_8hpp.html#a698fd87d6b0739e2c466ffe9d51785e9',1,'operator*(const long long &lhs, const BigInt &rhs): binary_arithmetic.hpp'],['../binary__arithmetic_8hpp.html#a3cc4bf898485f3841e577384e2ffb16e',1,'operator*(const std::string &lhs, const BigInt &rhs): binary_arithmetic.hpp']]], - ['operator_2a_3d',['operator*=',['../class_big_int.html#a7879601a32aed7c7b8260cda1b84f923',1,'BigInt::operator*=(const BigInt &)'],['../class_big_int.html#a1d432614a52fd006d3b14322fbe608b9',1,'BigInt::operator*=(const long long &)'],['../class_big_int.html#a564f8e68b8fd3015d7c04e35ca896f02',1,'BigInt::operator*=(const std::string &)']]], - ['operator_2b',['operator+',['../class_big_int.html#a34c8cba8f37b03e6973398585f7f8927',1,'BigInt::operator+() const'],['../class_big_int.html#a9061b1429cd008ceb98489aed9f19456',1,'BigInt::operator+(const BigInt &) const'],['../class_big_int.html#ab294348f27c37fc6b0b240af2ad4688e',1,'BigInt::operator+(const long long &) const'],['../class_big_int.html#a70cc64c45e815e7c1477c3ab2af77426',1,'BigInt::operator+(const std::string &) const'],['../binary__arithmetic_8hpp.html#a3370ae5b4a55a1e95cbd6cafb9825954',1,'operator+(const long long &lhs, const BigInt &rhs): binary_arithmetic.hpp'],['../binary__arithmetic_8hpp.html#a853d1b05bf5546b5392e5988592d59d8',1,'operator+(const std::string &lhs, const BigInt &rhs): binary_arithmetic.hpp']]], - ['operator_2b_2b',['operator++',['../class_big_int.html#a0f1a8a43867f25c8df48e7747012536f',1,'BigInt::operator++()'],['../class_big_int.html#a7120696c07c413340246a61eb209a541',1,'BigInt::operator++(int)']]], - ['operator_2b_3d',['operator+=',['../class_big_int.html#ad9da0ba0acddb753a26422f5ef878ac9',1,'BigInt::operator+=(const BigInt &)'],['../class_big_int.html#a740520b5b3338457c5f529ea59822985',1,'BigInt::operator+=(const long long &)'],['../class_big_int.html#a6d01af5292821550b7f8bb7f5c69682b',1,'BigInt::operator+=(const std::string &)']]], - ['operator_2d',['operator-',['../class_big_int.html#a4a4ded170439fee88f133d0202b5c182',1,'BigInt::operator-() const'],['../class_big_int.html#a7249d866644c0e5646ab445e8612fba8',1,'BigInt::operator-(const BigInt &) const'],['../class_big_int.html#ae698638ca810ab0be3d56d3990c95c98',1,'BigInt::operator-(const long long &) const'],['../class_big_int.html#afc41f9781390e8ea4a3af671bbfe00aa',1,'BigInt::operator-(const std::string &) const'],['../binary__arithmetic_8hpp.html#a30938daf1671d2987298cbb25489f5ea',1,'operator-(const long long &lhs, const BigInt &rhs): binary_arithmetic.hpp'],['../binary__arithmetic_8hpp.html#a6a6d681ba9f93dcb2fea2c1d4e673962',1,'operator-(const std::string &lhs, const BigInt &rhs): binary_arithmetic.hpp']]], - ['operator_2d_2d',['operator--',['../class_big_int.html#aed992537fac59f8c794fc24d10baf199',1,'BigInt::operator--()'],['../class_big_int.html#a6ef5639e9f2cb2226f8611bb39c6c663',1,'BigInt::operator--(int)']]], - ['operator_2d_3d',['operator-=',['../class_big_int.html#a1580ecd591d7ece24212c614ddbaac8e',1,'BigInt::operator-=(const BigInt &)'],['../class_big_int.html#a241c4bb5929eb235c39c6433f4af4a6a',1,'BigInt::operator-=(const long long &)'],['../class_big_int.html#aee2d40c876b82640929129dc076d41e9',1,'BigInt::operator-=(const std::string &)']]], - ['operator_2f',['operator/',['../class_big_int.html#ada6761cba4a4278f00e582a67ed50613',1,'BigInt::operator/(const BigInt &) const'],['../class_big_int.html#a13d319b0e368d5488a675c31de515e08',1,'BigInt::operator/(const long long &) const'],['../class_big_int.html#a2b9f4d0435cb4e7d1621a56b0658d9ad',1,'BigInt::operator/(const std::string &) const'],['../binary__arithmetic_8hpp.html#ae07e238ed266aeb18464edae6619559e',1,'operator/(const long long &lhs, const BigInt &rhs): binary_arithmetic.hpp'],['../binary__arithmetic_8hpp.html#af871685a61a35d325e853f7a9da91ec4',1,'operator/(const std::string &lhs, const BigInt &rhs): binary_arithmetic.hpp']]], - ['operator_2f_3d',['operator/=',['../class_big_int.html#a462f752f3d23f7ea2687ae7e1ba925ec',1,'BigInt::operator/=(const BigInt &)'],['../class_big_int.html#ae4ba27b9e1d5eaf20cf1384a86a48195',1,'BigInt::operator/=(const long long &)'],['../class_big_int.html#ab0da658e91c27c0f17235d8a62cc8db3',1,'BigInt::operator/=(const std::string &)']]], - ['operator_3c',['operator<',['../class_big_int.html#ae12075707da6d7bdac8f2d8668873d47',1,'BigInt::operator<(const BigInt &) const'],['../class_big_int.html#abd4ec0c6b0cb3d5da747e2beb1af6a93',1,'BigInt::operator<(const long long &) const'],['../class_big_int.html#ab2023a20de7192c4dfd7e89ecf2b9138',1,'BigInt::operator<(const std::string &) const'],['../relational_8hpp.html#a6fbc54db53ddcd09698cf5e93dd7840b',1,'operator<(const long long &lhs, const BigInt &rhs): relational.hpp'],['../relational_8hpp.html#a20a8f6965172c60933f85f6e5236670e',1,'operator<(const std::string &lhs, const BigInt &rhs): relational.hpp']]], - ['operator_3c_3c',['operator<<',['../io__stream_8hpp.html#a6feaf90cc45b9586bcb059c454168150',1,'io_stream.hpp']]], - ['operator_3c_3d',['operator<=',['../class_big_int.html#aad1809670bf2e80e187a511b38b7e37d',1,'BigInt::operator<=(const BigInt &) const'],['../class_big_int.html#a6a908aa26d8def54a0d21c57b6ad08a1',1,'BigInt::operator<=(const long long &) const'],['../class_big_int.html#ae817730a2f5278ea29b8c800afeaaaa0',1,'BigInt::operator<=(const std::string &) const'],['../relational_8hpp.html#a071d7a32d241c9f008b2726d2c4e531b',1,'operator<=(const long long &lhs, const BigInt &rhs): relational.hpp'],['../relational_8hpp.html#aaece4d933c8d4cf9b05a92c5af5e5c98',1,'operator<=(const std::string &lhs, const BigInt &rhs): relational.hpp']]], - ['operator_3d',['operator=',['../class_big_int.html#ac6e8a29bee594029dc3bb2c9c794e259',1,'BigInt::operator=(const BigInt &)'],['../class_big_int.html#af1af1887f936042b018da4c06d51cd39',1,'BigInt::operator=(const long long &)'],['../class_big_int.html#a763d60d73f762f5be7a272ec44487556',1,'BigInt::operator=(const std::string &)']]], - ['operator_3d_3d',['operator==',['../class_big_int.html#a4420176089729ea0a0014e1d033307d3',1,'BigInt::operator==(const BigInt &) const'],['../class_big_int.html#aee8e0bac33be10dcd0f3fc50c3ecdc3d',1,'BigInt::operator==(const long long &) const'],['../class_big_int.html#ad566a44cd68b8c9101f219749fff4e0d',1,'BigInt::operator==(const std::string &) const'],['../relational_8hpp.html#a7241256ce42ebf32025be7463f2206cb',1,'operator==(const long long &lhs, const BigInt &rhs): relational.hpp'],['../relational_8hpp.html#ab647147b4f57b346812fa3ce7b9d454c',1,'operator==(const std::string &lhs, const BigInt &rhs): relational.hpp']]], - ['operator_3e',['operator>',['../class_big_int.html#a56e910608a29f0bff111fa8c5b82e891',1,'BigInt::operator>(const BigInt &) const'],['../class_big_int.html#aff41228b32bd2a623a6fb1e3c49a9148',1,'BigInt::operator>(const long long &) const'],['../class_big_int.html#ab346f6fa11fba7ee3ce51fb4ccf6b2bb',1,'BigInt::operator>(const std::string &) const'],['../relational_8hpp.html#add8be7262977696132cda750e38a452e',1,'operator>(const long long &lhs, const BigInt &rhs): relational.hpp'],['../relational_8hpp.html#a1eeac8d555d7cd7b1d31ffaef2e6c1e5',1,'operator>(const std::string &lhs, const BigInt &rhs): relational.hpp']]], - ['operator_3e_3d',['operator>=',['../class_big_int.html#afdced5604a4e64d4d800a30991847a03',1,'BigInt::operator>=(const BigInt &) const'],['../class_big_int.html#a36080ae3b0da1b2827d5fe63c9708a5a',1,'BigInt::operator>=(const long long &) const'],['../class_big_int.html#aeede36984a8dcc6b5f16857fde86b487',1,'BigInt::operator>=(const std::string &) const'],['../relational_8hpp.html#ae4daaeefda1751987586a2d1499eed0c',1,'operator>=(const long long &lhs, const BigInt &rhs): relational.hpp'],['../relational_8hpp.html#a39489df52a40cd4c7ff3bf0a1999b2a3',1,'operator>=(const std::string &lhs, const BigInt &rhs): relational.hpp']]], - ['operator_3e_3e',['operator>>',['../io__stream_8hpp.html#ad85e9c599510b60d09f9b3ed19a0ae37',1,'io_stream.hpp']]] -]; diff --git a/docs/html/search/functions_7.html b/docs/html/search/functions_7.html deleted file mode 100644 index 6e09abf..0000000 --- a/docs/html/search/functions_7.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/functions_7.js b/docs/html/search/functions_7.js deleted file mode 100644 index 80bc0ed..0000000 --- a/docs/html/search/functions_7.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['pow',['pow',['../math_8hpp.html#a481d1f2a5da56c21707d96db8fbdd117',1,'pow(const BigInt &base, int exp): math.hpp'],['../math_8hpp.html#a1c49c5bbdd2631b0d5bf298d60d5e5d3',1,'pow(const long long &base, int exp): math.hpp'],['../math_8hpp.html#ac0e322e64a440d9d6772ac706926cd1e',1,'pow(const std::string &base, int exp): math.hpp']]] -]; diff --git a/docs/html/search/functions_8.html b/docs/html/search/functions_8.html deleted file mode 100644 index d59ea97..0000000 --- a/docs/html/search/functions_8.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/functions_8.js b/docs/html/search/functions_8.js deleted file mode 100644 index 7143f3f..0000000 --- a/docs/html/search/functions_8.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['sqrt',['sqrt',['../math_8hpp.html#abf73aa7c2871b1741c4f8cdfed311630',1,'math.hpp']]], - ['strip_5fleading_5fzeroes',['strip_leading_zeroes',['../utility_8hpp.html#a0076804a81f52fbd6cff85a4e1d79cc1',1,'utility.hpp']]] -]; diff --git a/docs/html/search/functions_9.html b/docs/html/search/functions_9.html deleted file mode 100644 index 5ccec42..0000000 --- a/docs/html/search/functions_9.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/functions_9.js b/docs/html/search/functions_9.js deleted file mode 100644 index 6c25d34..0000000 --- a/docs/html/search/functions_9.js +++ /dev/null @@ -1,7 +0,0 @@ -var searchData= -[ - ['to_5fint',['to_int',['../class_big_int.html#a35a5f2a71ef11861475a59cf0e0ac700',1,'BigInt']]], - ['to_5flong',['to_long',['../class_big_int.html#a38480fcfc937aa0f5c2e86dac8a1dd7c',1,'BigInt']]], - ['to_5flong_5flong',['to_long_long',['../class_big_int.html#ac4f41fb03eabbbf6f98869d296d8845a',1,'BigInt']]], - ['to_5fstring',['to_string',['../class_big_int.html#a1e3ed7be0093cfa492a79c5352ccad71',1,'BigInt']]] -]; diff --git a/docs/html/search/mag_sel.png b/docs/html/search/mag_sel.png deleted file mode 100644 index 81f6040..0000000 Binary files a/docs/html/search/mag_sel.png and /dev/null differ diff --git a/docs/html/search/nomatches.html b/docs/html/search/nomatches.html deleted file mode 100644 index b1ded27..0000000 --- a/docs/html/search/nomatches.html +++ /dev/null @@ -1,12 +0,0 @@ - - - - - - - -
    -
    No Matches
    -
    - - diff --git a/docs/html/search/pages_0.html b/docs/html/search/pages_0.html deleted file mode 100644 index d752858..0000000 --- a/docs/html/search/pages_0.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/pages_0.js b/docs/html/search/pages_0.js deleted file mode 100644 index 441b2de..0000000 --- a/docs/html/search/pages_0.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['todo_20list',['Todo List',['../todo.html',1,'']]] -]; diff --git a/docs/html/search/related_0.html b/docs/html/search/related_0.html deleted file mode 100644 index 575b040..0000000 --- a/docs/html/search/related_0.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/related_0.js b/docs/html/search/related_0.js deleted file mode 100644 index e314e80..0000000 --- a/docs/html/search/related_0.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['big_5frandom',['big_random',['../class_big_int.html#a33415625f48e4cfa2d63250ad5ff2439',1,'BigInt']]] -]; diff --git a/docs/html/search/related_1.html b/docs/html/search/related_1.html deleted file mode 100644 index 7149672..0000000 --- a/docs/html/search/related_1.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/related_1.js b/docs/html/search/related_1.js deleted file mode 100644 index b3dad93..0000000 --- a/docs/html/search/related_1.js +++ /dev/null @@ -1,5 +0,0 @@ -var searchData= -[ - ['operator_3c_3c',['operator<<',['../class_big_int.html#a61858213524e69594b97acc0884974c9',1,'BigInt']]], - ['operator_3e_3e',['operator>>',['../class_big_int.html#a2b2caad36116d3ebf27c9ea6e450e560',1,'BigInt']]] -]; diff --git a/docs/html/search/search.css b/docs/html/search/search.css deleted file mode 100644 index 3cf9df9..0000000 --- a/docs/html/search/search.css +++ /dev/null @@ -1,271 +0,0 @@ -/*---------------- Search Box */ - -#FSearchBox { - float: left; -} - -#MSearchBox { - white-space : nowrap; - float: none; - margin-top: 8px; - right: 0px; - width: 170px; - height: 24px; - z-index: 102; -} - -#MSearchBox .left -{ - display:block; - position:absolute; - left:10px; - width:20px; - height:19px; - background:url('search_l.png') no-repeat; - background-position:right; -} - -#MSearchSelect { - display:block; - position:absolute; - width:20px; - height:19px; -} - -.left #MSearchSelect { - left:4px; -} - -.right #MSearchSelect { - right:5px; -} - -#MSearchField { - display:block; - position:absolute; - height:19px; - background:url('search_m.png') repeat-x; - border:none; - width:115px; - margin-left:20px; - padding-left:4px; - color: #909090; - outline: none; - font: 9pt Arial, Verdana, sans-serif; - -webkit-border-radius: 0px; -} - -#FSearchBox #MSearchField { - margin-left:15px; -} - -#MSearchBox .right { - display:block; - position:absolute; - right:10px; - top:8px; - width:20px; - height:19px; - background:url('search_r.png') no-repeat; - background-position:left; -} - -#MSearchClose { - display: none; - position: absolute; - top: 4px; - background : none; - border: none; - margin: 0px 4px 0px 0px; - padding: 0px 0px; - outline: none; -} - -.left #MSearchClose { - left: 6px; -} - -.right #MSearchClose { - right: 2px; -} - -.MSearchBoxActive #MSearchField { - color: #000000; -} - -/*---------------- Search filter selection */ - -#MSearchSelectWindow { - display: none; - position: absolute; - left: 0; top: 0; - border: 1px solid #90A5CE; - background-color: #F9FAFC; - z-index: 10001; - padding-top: 4px; - padding-bottom: 4px; - -moz-border-radius: 4px; - -webkit-border-top-left-radius: 4px; - -webkit-border-top-right-radius: 4px; - -webkit-border-bottom-left-radius: 4px; - -webkit-border-bottom-right-radius: 4px; - -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); -} - -.SelectItem { - font: 8pt Arial, Verdana, sans-serif; - padding-left: 2px; - padding-right: 12px; - border: 0px; -} - -span.SelectionMark { - margin-right: 4px; - font-family: monospace; - outline-style: none; - text-decoration: none; -} - -a.SelectItem { - display: block; - outline-style: none; - color: #000000; - text-decoration: none; - padding-left: 6px; - padding-right: 12px; -} - -a.SelectItem:focus, -a.SelectItem:active { - color: #000000; - outline-style: none; - text-decoration: none; -} - -a.SelectItem:hover { - color: #FFFFFF; - background-color: #3D578C; - outline-style: none; - text-decoration: none; - cursor: pointer; - display: block; -} - -/*---------------- Search results window */ - -iframe#MSearchResults { - width: 60ex; - height: 15em; -} - -#MSearchResultsWindow { - display: none; - position: absolute; - left: 0; top: 0; - border: 1px solid #000; - background-color: #EEF1F7; - z-index:10000; -} - -/* ----------------------------------- */ - - -#SRIndex { - clear:both; - padding-bottom: 15px; -} - -.SREntry { - font-size: 10pt; - padding-left: 1ex; -} - -.SRPage .SREntry { - font-size: 8pt; - padding: 1px 5px; -} - -body.SRPage { - margin: 5px 2px; -} - -.SRChildren { - padding-left: 3ex; padding-bottom: .5em -} - -.SRPage .SRChildren { - display: none; -} - -.SRSymbol { - font-weight: bold; - color: #425E97; - font-family: Arial, Verdana, sans-serif; - text-decoration: none; - outline: none; -} - -a.SRScope { - display: block; - color: #425E97; - font-family: Arial, Verdana, sans-serif; - text-decoration: none; - outline: none; -} - -a.SRSymbol:focus, a.SRSymbol:active, -a.SRScope:focus, a.SRScope:active { - text-decoration: underline; -} - -span.SRScope { - padding-left: 4px; -} - -.SRPage .SRStatus { - padding: 2px 5px; - font-size: 8pt; - font-style: italic; -} - -.SRResult { - display: none; -} - -DIV.searchresults { - margin-left: 10px; - margin-right: 10px; -} - -/*---------------- External search page results */ - -.searchresult { - background-color: #F0F3F8; -} - -.pages b { - color: white; - padding: 5px 5px 3px 5px; - background-image: url("../tab_a.png"); - background-repeat: repeat-x; - text-shadow: 0 1px 1px #000000; -} - -.pages { - line-height: 17px; - margin-left: 4px; - text-decoration: none; -} - -.hl { - font-weight: bold; -} - -#searchresults { - margin-bottom: 20px; -} - -.searchpages { - margin-top: 10px; -} - diff --git a/docs/html/search/search.js b/docs/html/search/search.js deleted file mode 100644 index a554ab9..0000000 --- a/docs/html/search/search.js +++ /dev/null @@ -1,814 +0,0 @@ -/* - @licstart The following is the entire license notice for the - JavaScript code in this file. - - Copyright (C) 1997-2017 by Dimitri van Heesch - - This program is free software; you can redistribute it and/or modify - it under the terms of the GNU General Public License as published by - the Free Software Foundation; either version 2 of the License, or - (at your option) any later version. - - This program is distributed in the hope that it will be useful, - but WITHOUT ANY WARRANTY; without even the implied warranty of - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - GNU General Public License for more details. - - You should have received a copy of the GNU General Public License along - with this program; if not, write to the Free Software Foundation, Inc., - 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. - - @licend The above is the entire license notice - for the JavaScript code in this file - */ -function convertToId(search) -{ - var result = ''; - for (i=0;i do a search - { - this.Search(); - } - } - - this.OnSearchSelectKey = function(evt) - { - var e = (evt) ? evt : window.event; // for IE - if (e.keyCode==40 && this.searchIndex0) // Up - { - this.searchIndex--; - this.OnSelectItem(this.searchIndex); - } - else if (e.keyCode==13 || e.keyCode==27) - { - this.OnSelectItem(this.searchIndex); - this.CloseSelectionWindow(); - this.DOMSearchField().focus(); - } - return false; - } - - // --------- Actions - - // Closes the results window. - this.CloseResultsWindow = function() - { - this.DOMPopupSearchResultsWindow().style.display = 'none'; - this.DOMSearchClose().style.display = 'none'; - this.Activate(false); - } - - this.CloseSelectionWindow = function() - { - this.DOMSearchSelectWindow().style.display = 'none'; - } - - // Performs a search. - this.Search = function() - { - this.keyTimeout = 0; - - // strip leading whitespace - var searchValue = this.DOMSearchField().value.replace(/^ +/, ""); - - var code = searchValue.toLowerCase().charCodeAt(0); - var idxChar = searchValue.substr(0, 1).toLowerCase(); - if ( 0xD800 <= code && code <= 0xDBFF && searchValue > 1) // surrogate pair - { - idxChar = searchValue.substr(0, 2); - } - - var resultsPage; - var resultsPageWithSearch; - var hasResultsPage; - - var idx = indexSectionsWithContent[this.searchIndex].indexOf(idxChar); - if (idx!=-1) - { - var hexCode=idx.toString(16); - resultsPage = this.resultsPath + '/' + indexSectionNames[this.searchIndex] + '_' + hexCode + '.html'; - resultsPageWithSearch = resultsPage+'?'+escape(searchValue); - hasResultsPage = true; - } - else // nothing available for this search term - { - resultsPage = this.resultsPath + '/nomatches.html'; - resultsPageWithSearch = resultsPage; - hasResultsPage = false; - } - - window.frames.MSearchResults.location = resultsPageWithSearch; - var domPopupSearchResultsWindow = this.DOMPopupSearchResultsWindow(); - - if (domPopupSearchResultsWindow.style.display!='block') - { - var domSearchBox = this.DOMSearchBox(); - this.DOMSearchClose().style.display = 'inline'; - if (this.insideFrame) - { - var domPopupSearchResults = this.DOMPopupSearchResults(); - domPopupSearchResultsWindow.style.position = 'relative'; - domPopupSearchResultsWindow.style.display = 'block'; - var width = document.body.clientWidth - 8; // the -8 is for IE :-( - domPopupSearchResultsWindow.style.width = width + 'px'; - domPopupSearchResults.style.width = width + 'px'; - } - else - { - var domPopupSearchResults = this.DOMPopupSearchResults(); - var left = getXPos(domSearchBox) + 150; // domSearchBox.offsetWidth; - var top = getYPos(domSearchBox) + 20; // domSearchBox.offsetHeight + 1; - domPopupSearchResultsWindow.style.display = 'block'; - left -= domPopupSearchResults.offsetWidth; - domPopupSearchResultsWindow.style.top = top + 'px'; - domPopupSearchResultsWindow.style.left = left + 'px'; - } - } - - this.lastSearchValue = searchValue; - this.lastResultsPage = resultsPage; - } - - // -------- Activation Functions - - // Activates or deactivates the search panel, resetting things to - // their default values if necessary. - this.Activate = function(isActive) - { - if (isActive || // open it - this.DOMPopupSearchResultsWindow().style.display == 'block' - ) - { - this.DOMSearchBox().className = 'MSearchBoxActive'; - - var searchField = this.DOMSearchField(); - - if (searchField.value == this.searchLabel) // clear "Search" term upon entry - { - searchField.value = ''; - this.searchActive = true; - } - } - else if (!isActive) // directly remove the panel - { - this.DOMSearchBox().className = 'MSearchBoxInactive'; - this.DOMSearchField().value = this.searchLabel; - this.searchActive = false; - this.lastSearchValue = '' - this.lastResultsPage = ''; - } - } -} - -// ----------------------------------------------------------------------- - -// The class that handles everything on the search results page. -function SearchResults(name) -{ - // The number of matches from the last run of . - this.lastMatchCount = 0; - this.lastKey = 0; - this.repeatOn = false; - - // Toggles the visibility of the passed element ID. - this.FindChildElement = function(id) - { - var parentElement = document.getElementById(id); - var element = parentElement.firstChild; - - while (element && element!=parentElement) - { - if (element.nodeName == 'DIV' && element.className == 'SRChildren') - { - return element; - } - - if (element.nodeName == 'DIV' && element.hasChildNodes()) - { - element = element.firstChild; - } - else if (element.nextSibling) - { - element = element.nextSibling; - } - else - { - do - { - element = element.parentNode; - } - while (element && element!=parentElement && !element.nextSibling); - - if (element && element!=parentElement) - { - element = element.nextSibling; - } - } - } - } - - this.Toggle = function(id) - { - var element = this.FindChildElement(id); - if (element) - { - if (element.style.display == 'block') - { - element.style.display = 'none'; - } - else - { - element.style.display = 'block'; - } - } - } - - // Searches for the passed string. If there is no parameter, - // it takes it from the URL query. - // - // Always returns true, since other documents may try to call it - // and that may or may not be possible. - this.Search = function(search) - { - if (!search) // get search word from URL - { - search = window.location.search; - search = search.substring(1); // Remove the leading '?' - search = unescape(search); - } - - search = search.replace(/^ +/, ""); // strip leading spaces - search = search.replace(/ +$/, ""); // strip trailing spaces - search = search.toLowerCase(); - search = convertToId(search); - - var resultRows = document.getElementsByTagName("div"); - var matches = 0; - - var i = 0; - while (i < resultRows.length) - { - var row = resultRows.item(i); - if (row.className == "SRResult") - { - var rowMatchName = row.id.toLowerCase(); - rowMatchName = rowMatchName.replace(/^sr\d*_/, ''); // strip 'sr123_' - - if (search.length<=rowMatchName.length && - rowMatchName.substr(0, search.length)==search) - { - row.style.display = 'block'; - matches++; - } - else - { - row.style.display = 'none'; - } - } - i++; - } - document.getElementById("Searching").style.display='none'; - if (matches == 0) // no results - { - document.getElementById("NoMatches").style.display='block'; - } - else // at least one result - { - document.getElementById("NoMatches").style.display='none'; - } - this.lastMatchCount = matches; - return true; - } - - // return the first item with index index or higher that is visible - this.NavNext = function(index) - { - var focusItem; - while (1) - { - var focusName = 'Item'+index; - focusItem = document.getElementById(focusName); - if (focusItem && focusItem.parentNode.parentNode.style.display=='block') - { - break; - } - else if (!focusItem) // last element - { - break; - } - focusItem=null; - index++; - } - return focusItem; - } - - this.NavPrev = function(index) - { - var focusItem; - while (1) - { - var focusName = 'Item'+index; - focusItem = document.getElementById(focusName); - if (focusItem && focusItem.parentNode.parentNode.style.display=='block') - { - break; - } - else if (!focusItem) // last element - { - break; - } - focusItem=null; - index--; - } - return focusItem; - } - - this.ProcessKeys = function(e) - { - if (e.type == "keydown") - { - this.repeatOn = false; - this.lastKey = e.keyCode; - } - else if (e.type == "keypress") - { - if (!this.repeatOn) - { - if (this.lastKey) this.repeatOn = true; - return false; // ignore first keypress after keydown - } - } - else if (e.type == "keyup") - { - this.lastKey = 0; - this.repeatOn = false; - } - return this.lastKey!=0; - } - - this.Nav = function(evt,itemIndex) - { - var e = (evt) ? evt : window.event; // for IE - if (e.keyCode==13) return true; - if (!this.ProcessKeys(e)) return false; - - if (this.lastKey==38) // Up - { - var newIndex = itemIndex-1; - var focusItem = this.NavPrev(newIndex); - if (focusItem) - { - var child = this.FindChildElement(focusItem.parentNode.parentNode.id); - if (child && child.style.display == 'block') // children visible - { - var n=0; - var tmpElem; - while (1) // search for last child - { - tmpElem = document.getElementById('Item'+newIndex+'_c'+n); - if (tmpElem) - { - focusItem = tmpElem; - } - else // found it! - { - break; - } - n++; - } - } - } - if (focusItem) - { - focusItem.focus(); - } - else // return focus to search field - { - parent.document.getElementById("MSearchField").focus(); - } - } - else if (this.lastKey==40) // Down - { - var newIndex = itemIndex+1; - var focusItem; - var item = document.getElementById('Item'+itemIndex); - var elem = this.FindChildElement(item.parentNode.parentNode.id); - if (elem && elem.style.display == 'block') // children visible - { - focusItem = document.getElementById('Item'+itemIndex+'_c0'); - } - if (!focusItem) focusItem = this.NavNext(newIndex); - if (focusItem) focusItem.focus(); - } - else if (this.lastKey==39) // Right - { - var item = document.getElementById('Item'+itemIndex); - var elem = this.FindChildElement(item.parentNode.parentNode.id); - if (elem) elem.style.display = 'block'; - } - else if (this.lastKey==37) // Left - { - var item = document.getElementById('Item'+itemIndex); - var elem = this.FindChildElement(item.parentNode.parentNode.id); - if (elem) elem.style.display = 'none'; - } - else if (this.lastKey==27) // Escape - { - parent.searchBox.CloseResultsWindow(); - parent.document.getElementById("MSearchField").focus(); - } - else if (this.lastKey==13) // Enter - { - return true; - } - return false; - } - - this.NavChild = function(evt,itemIndex,childIndex) - { - var e = (evt) ? evt : window.event; // for IE - if (e.keyCode==13) return true; - if (!this.ProcessKeys(e)) return false; - - if (this.lastKey==38) // Up - { - if (childIndex>0) - { - var newIndex = childIndex-1; - document.getElementById('Item'+itemIndex+'_c'+newIndex).focus(); - } - else // already at first child, jump to parent - { - document.getElementById('Item'+itemIndex).focus(); - } - } - else if (this.lastKey==40) // Down - { - var newIndex = childIndex+1; - var elem = document.getElementById('Item'+itemIndex+'_c'+newIndex); - if (!elem) // last child, jump to parent next parent - { - elem = this.NavNext(itemIndex+1); - } - if (elem) - { - elem.focus(); - } - } - else if (this.lastKey==27) // Escape - { - parent.searchBox.CloseResultsWindow(); - parent.document.getElementById("MSearchField").focus(); - } - else if (this.lastKey==13) // Enter - { - return true; - } - return false; - } -} - -function setKeyActions(elem,action) -{ - elem.setAttribute('onkeydown',action); - elem.setAttribute('onkeypress',action); - elem.setAttribute('onkeyup',action); -} - -function setClassAttr(elem,attr) -{ - elem.setAttribute('class',attr); - elem.setAttribute('className',attr); -} - -function createResults() -{ - var results = document.getElementById("SRResults"); - for (var e=0; e - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/variables_0.js b/docs/html/search/variables_0.js deleted file mode 100644 index 27e3cc2..0000000 --- a/docs/html/search/variables_0.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['floor_5fsqrt_5fllong_5fmax',['FLOOR_SQRT_LLONG_MAX',['../binary__arithmetic_8hpp.html#ad07868eab18fb7d69e30e2d2fdd7b475',1,'binary_arithmetic.hpp']]] -]; diff --git a/docs/html/search/variables_1.html b/docs/html/search/variables_1.html deleted file mode 100644 index f46154d..0000000 --- a/docs/html/search/variables_1.html +++ /dev/null @@ -1,30 +0,0 @@ - - - - - - - - - -
    -
    Loading...
    -
    - -
    Searching...
    -
    No Matches
    - -
    - - diff --git a/docs/html/search/variables_1.js b/docs/html/search/variables_1.js deleted file mode 100644 index 81dd3e1..0000000 --- a/docs/html/search/variables_1.js +++ /dev/null @@ -1,4 +0,0 @@ -var searchData= -[ - ['max_5frandom_5flength',['MAX_RANDOM_LENGTH',['../random_8hpp.html#a2e260cf435898b1ee04502d142674c16',1,'random.hpp']]] -]; diff --git a/docs/html/splitbar.png b/docs/html/splitbar.png deleted file mode 100644 index fe895f2..0000000 Binary files a/docs/html/splitbar.png and /dev/null differ diff --git a/docs/html/sync_off.png b/docs/html/sync_off.png deleted file mode 100644 index 3b443fc..0000000 Binary files a/docs/html/sync_off.png and /dev/null differ diff --git a/docs/html/sync_on.png b/docs/html/sync_on.png deleted file mode 100644 index e08320f..0000000 Binary files a/docs/html/sync_on.png and /dev/null differ diff --git a/docs/html/tab_a.png b/docs/html/tab_a.png deleted file mode 100644 index 3b725c4..0000000 Binary files a/docs/html/tab_a.png and /dev/null differ diff --git a/docs/html/tab_b.png b/docs/html/tab_b.png deleted file mode 100644 index e2b4a86..0000000 Binary files a/docs/html/tab_b.png and /dev/null differ diff --git a/docs/html/tab_h.png b/docs/html/tab_h.png deleted file mode 100644 index fd5cb70..0000000 Binary files a/docs/html/tab_h.png and /dev/null differ diff --git a/docs/html/tab_s.png b/docs/html/tab_s.png deleted file mode 100644 index ab478c9..0000000 Binary files a/docs/html/tab_s.png and /dev/null differ diff --git a/docs/html/tabs.css b/docs/html/tabs.css deleted file mode 100644 index a28614b..0000000 --- a/docs/html/tabs.css +++ /dev/null @@ -1 +0,0 @@ -.sm{position:relative;z-index:9999}.sm,.sm ul,.sm li{display:block;list-style:none;margin:0;padding:0;line-height:normal;direction:ltr;text-align:left;-webkit-tap-highlight-color:rgba(0,0,0,0)}.sm-rtl,.sm-rtl ul,.sm-rtl li{direction:rtl;text-align:right}.sm>li>h1,.sm>li>h2,.sm>li>h3,.sm>li>h4,.sm>li>h5,.sm>li>h6{margin:0;padding:0}.sm ul{display:none}.sm li,.sm a{position:relative}.sm a{display:block}.sm a.disabled{cursor:not-allowed}.sm:after{content:"\00a0";display:block;height:0;font:0/0 serif;clear:both;visibility:hidden;overflow:hidden}.sm,.sm *,.sm *:before,.sm *:after{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}#doc-content{overflow:auto;display:block;padding:0;margin:0;-webkit-overflow-scrolling:touch}.sm-dox{background-image:url("tab_b.png")}.sm-dox a,.sm-dox a:focus,.sm-dox a:hover,.sm-dox a:active{padding:0 12px;padding-right:43px;font-family:"Lucida Grande","Geneva","Helvetica",Arial,sans-serif;font-size:13px;font-weight:bold;line-height:36px;text-decoration:none;text-shadow:0 1px 1px rgba(255,255,255,0.9);color:#283a5d;outline:0}.sm-dox a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:white;text-shadow:0 1px 1px black}.sm-dox a.current{color:#d23600}.sm-dox a.disabled{color:#bbb}.sm-dox a span.sub-arrow{position:absolute;top:50%;margin-top:-14px;left:auto;right:3px;width:28px;height:28px;overflow:hidden;font:bold 12px/28px monospace!important;text-align:center;text-shadow:none;background:rgba(255,255,255,0.5);-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px}.sm-dox a.highlighted span.sub-arrow:before{display:block;content:'-'}.sm-dox>li:first-child>a,.sm-dox>li:first-child>:not(ul) a{-moz-border-radius:5px 5px 0 0;-webkit-border-radius:5px;border-radius:5px 5px 0 0}.sm-dox>li:last-child>a,.sm-dox>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul{-moz-border-radius:0 0 5px 5px;-webkit-border-radius:0;border-radius:0 0 5px 5px}.sm-dox>li:last-child>a.highlighted,.sm-dox>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted{-moz-border-radius:0;-webkit-border-radius:0;border-radius:0}.sm-dox ul{background:rgba(162,162,162,0.1)}.sm-dox ul a,.sm-dox ul a:focus,.sm-dox ul a:hover,.sm-dox ul a:active{font-size:12px;border-left:8px solid transparent;line-height:36px;text-shadow:none;background-color:white;background-image:none}.sm-dox ul a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:white;text-shadow:0 1px 1px black}.sm-dox ul ul a,.sm-dox ul ul a:hover,.sm-dox ul ul a:focus,.sm-dox ul ul a:active{border-left:16px solid transparent}.sm-dox ul ul ul a,.sm-dox ul ul ul a:hover,.sm-dox ul ul ul a:focus,.sm-dox ul ul ul a:active{border-left:24px solid transparent}.sm-dox ul ul ul ul a,.sm-dox ul ul ul ul a:hover,.sm-dox ul ul ul ul a:focus,.sm-dox ul ul ul ul a:active{border-left:32px solid transparent}.sm-dox ul ul ul ul ul a,.sm-dox ul ul ul ul ul a:hover,.sm-dox ul ul ul ul ul a:focus,.sm-dox ul ul ul ul ul a:active{border-left:40px solid transparent}@media(min-width:768px){.sm-dox ul{position:absolute;width:12em}.sm-dox li{float:left}.sm-dox.sm-rtl li{float:right}.sm-dox ul li,.sm-dox.sm-rtl ul li,.sm-dox.sm-vertical li{float:none}.sm-dox a{white-space:nowrap}.sm-dox ul a,.sm-dox.sm-vertical a{white-space:normal}.sm-dox .sm-nowrap>li>a,.sm-dox .sm-nowrap>li>:not(ul) a{white-space:nowrap}.sm-dox{padding:0 10px;background-image:url("tab_b.png");line-height:36px}.sm-dox a span.sub-arrow{top:50%;margin-top:-2px;right:12px;width:0;height:0;border-width:4px;border-style:solid dashed dashed dashed;border-color:#283a5d transparent transparent transparent;background:transparent;-moz-border-radius:0;-webkit-border-radius:0;border-radius:0}.sm-dox a,.sm-dox a:focus,.sm-dox a:active,.sm-dox a:hover,.sm-dox a.highlighted{padding:0 12px;background-image:url("tab_s.png");background-repeat:no-repeat;background-position:right;-moz-border-radius:0!important;-webkit-border-radius:0;border-radius:0!important}.sm-dox a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:white;text-shadow:0 1px 1px black}.sm-dox a:hover span.sub-arrow{border-color:white transparent transparent transparent}.sm-dox a.has-submenu{padding-right:24px}.sm-dox li{border-top:0}.sm-dox>li>ul:before,.sm-dox>li>ul:after{content:'';position:absolute;top:-18px;left:30px;width:0;height:0;overflow:hidden;border-width:9px;border-style:dashed dashed solid dashed;border-color:transparent transparent #bbb transparent}.sm-dox>li>ul:after{top:-16px;left:31px;border-width:8px;border-color:transparent transparent #fff transparent}.sm-dox ul{border:1px solid #bbb;padding:5px 0;background:#fff;-moz-border-radius:5px!important;-webkit-border-radius:5px;border-radius:5px!important;-moz-box-shadow:0 5px 9px rgba(0,0,0,0.2);-webkit-box-shadow:0 5px 9px rgba(0,0,0,0.2);box-shadow:0 5px 9px rgba(0,0,0,0.2)}.sm-dox ul a span.sub-arrow{right:8px;top:50%;margin-top:-5px;border-width:5px;border-color:transparent transparent transparent #555;border-style:dashed dashed dashed solid}.sm-dox ul a,.sm-dox ul a:hover,.sm-dox ul a:focus,.sm-dox ul a:active,.sm-dox ul a.highlighted{color:#555;background-image:none;border:0!important;color:#555;background-image:none}.sm-dox ul a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:white;text-shadow:0 1px 1px black}.sm-dox ul a:hover span.sub-arrow{border-color:transparent transparent transparent white}.sm-dox span.scroll-up,.sm-dox span.scroll-down{position:absolute;display:none;visibility:hidden;overflow:hidden;background:#fff;height:36px}.sm-dox span.scroll-up:hover,.sm-dox span.scroll-down:hover{background:#eee}.sm-dox span.scroll-up:hover span.scroll-up-arrow,.sm-dox span.scroll-up:hover span.scroll-down-arrow{border-color:transparent transparent #d23600 transparent}.sm-dox span.scroll-down:hover span.scroll-down-arrow{border-color:#d23600 transparent transparent transparent}.sm-dox span.scroll-up-arrow,.sm-dox span.scroll-down-arrow{position:absolute;top:0;left:50%;margin-left:-6px;width:0;height:0;overflow:hidden;border-width:6px;border-style:dashed dashed solid dashed;border-color:transparent transparent #555 transparent}.sm-dox span.scroll-down-arrow{top:8px;border-style:solid dashed dashed dashed;border-color:#555 transparent transparent transparent}.sm-dox.sm-rtl a.has-submenu{padding-right:12px;padding-left:24px}.sm-dox.sm-rtl a span.sub-arrow{right:auto;left:12px}.sm-dox.sm-rtl.sm-vertical a.has-submenu{padding:10px 20px}.sm-dox.sm-rtl.sm-vertical a span.sub-arrow{right:auto;left:8px;border-style:dashed solid dashed dashed;border-color:transparent #555 transparent transparent}.sm-dox.sm-rtl>li>ul:before{left:auto;right:30px}.sm-dox.sm-rtl>li>ul:after{left:auto;right:31px}.sm-dox.sm-rtl ul a.has-submenu{padding:10px 20px!important}.sm-dox.sm-rtl ul a span.sub-arrow{right:auto;left:8px;border-style:dashed solid dashed dashed;border-color:transparent #555 transparent transparent}.sm-dox.sm-vertical{padding:10px 0;-moz-border-radius:5px;-webkit-border-radius:5px;border-radius:5px}.sm-dox.sm-vertical a{padding:10px 20px}.sm-dox.sm-vertical a:hover,.sm-dox.sm-vertical a:focus,.sm-dox.sm-vertical a:active,.sm-dox.sm-vertical a.highlighted{background:#fff}.sm-dox.sm-vertical a.disabled{background-image:url("tab_b.png")}.sm-dox.sm-vertical a span.sub-arrow{right:8px;top:50%;margin-top:-5px;border-width:5px;border-style:dashed dashed dashed solid;border-color:transparent transparent transparent #555}.sm-dox.sm-vertical>li>ul:before,.sm-dox.sm-vertical>li>ul:after{display:none}.sm-dox.sm-vertical ul a{padding:10px 20px}.sm-dox.sm-vertical ul a:hover,.sm-dox.sm-vertical ul a:focus,.sm-dox.sm-vertical ul a:active,.sm-dox.sm-vertical ul a.highlighted{background:#eee}.sm-dox.sm-vertical ul a.disabled{background:#fff}} \ No newline at end of file diff --git a/docs/html/todo.html b/docs/html/todo.html deleted file mode 100644 index b8cb22f..0000000 --- a/docs/html/todo.html +++ /dev/null @@ -1,88 +0,0 @@ - - - - - - - -Todo List - - - - - - - - - - -
    -
    - - - - - - - -
    -
    Big Integer library for C++
    -
    -
    - - - - - - - - -
    -
    - - -
    - -
    - -
    -
    -
    -
    Todo List
    -
    -
    -
    -
    Member BigInt::operator+ () const
    -
    Possibly return reference.
    -
    Member pow (const BigInt &base, int exp)
    -
    Possibly incorporate for BigInt exponent
    -
    -
    - - - - diff --git a/docs/html/unary__arithmetic_8hpp.html b/docs/html/unary__arithmetic_8hpp.html deleted file mode 100644 index 99979db..0000000 --- a/docs/html/unary__arithmetic_8hpp.html +++ /dev/null @@ -1,95 +0,0 @@ - - - - - - - -/Users/Mohsin/Repos/BigInt/include/operators/unary_arithmetic.hpp File Reference - - - - - - - - - - -
    -
    - - - - - - - -
    -
    Big Integer library for C++
    -
    -
    - - - - - - - - -
    -
    - - -
    - -
    - - -
    -
    -
    -
    unary_arithmetic.hpp File Reference
    -
    -
    - -

    Defining the unary arithmetic operators for BigInt. -More...

    -
    #include "BigInt.hpp"
    -#include "constructors/constructors.hpp"
    -
    -

    Go to the source code of this file.

    -

    Detailed Description

    -

    Defining the unary arithmetic operators for BigInt.

    -
    - - - - diff --git a/docs/html/unary__arithmetic_8hpp_source.html b/docs/html/unary__arithmetic_8hpp_source.html deleted file mode 100644 index af7f936..0000000 --- a/docs/html/unary__arithmetic_8hpp_source.html +++ /dev/null @@ -1,91 +0,0 @@ - - - - - - - -/Users/Mohsin/Repos/BigInt/include/operators/unary_arithmetic.hpp Source File - - - - - - - - - - -
    -
    - - - - - - - -
    -
    Big Integer library for C++
    -
    -
    - - - - - - - - -
    -
    - - -
    - -
    - - -
    -
    -
    -
    unary_arithmetic.hpp
    -
    -
    -Go to the documentation of this file.
    1 
    7 #ifndef BIG_INT_UNARY_ARITHMETIC_OPERATORS_HPP
    8 #define BIG_INT_UNARY_ARITHMETIC_OPERATORS_HPP
    9 
    10 #include "BigInt.hpp"
    12 
    13 
    28  return *this;
    29 }
    30 
    31 
    43  BigInt temp;
    44 
    45  temp.value = value;
    46  if (value != "0") {
    47  if (sign == '+')
    48  temp.sign = '-';
    49  else
    50  temp.sign = '+';
    51  }
    52 
    53  return temp;
    54 }
    55 
    56 #endif // BIG_INT_UNARY_ARITHMETIC_OPERATORS_HPP
    Class that contains an arbitrarily sized integer.
    Definition: BigInt.hpp:15
    -
    contains constructors of BigInt
    -
    BigInt operator+() const
    Performs unary + operation on BigInt.
    Definition: unary_arithmetic.hpp:27
    -
    Contains class declaration for BigInt.
    -
    BigInt operator-() const
    Performs unary - operation on BigInt.
    Definition: unary_arithmetic.hpp:42
    -
    - - - - diff --git a/docs/html/utility_8hpp.html b/docs/html/utility_8hpp.html deleted file mode 100644 index 3a24216..0000000 --- a/docs/html/utility_8hpp.html +++ /dev/null @@ -1,313 +0,0 @@ - - - - - - - -/Users/Mohsin/Repos/BigInt/include/functions/utility.hpp File Reference - - - - - - - - - - -
    -
    - - - - - - - -
    -
    Big Integer library for C++
    -
    -
    - - - - - - - - -
    -
    - - -
    - -
    - - -
    -
    - -
    -
    utility.hpp File Reference
    -
    -
    - -

    Contains some utility functions. -More...

    -
    #include <tuple>
    -
    -

    Go to the source code of this file.

    - - - - - - - - - - - - - - - - - - - - -

    -Functions

    bool is_valid_number (const std::string &num)
     Checks if std::string value is a valid integer. More...
     
    void strip_leading_zeroes (std::string &num)
     Removes leading zeroes from an std::string integer. More...
     
    void add_leading_zeroes (std::string &num, size_t num_zeroes)
     Adds leading zeros to std::string value. More...
     
    void add_trailing_zeroes (std::string &num, size_t num_zeroes)
     Adds trailing zeros to std::string value. More...
     
    std::tuple< std::string, std::string > get_larger_and_smaller (const std::string &num1, const std::string &num2)
     Returns std::string parameters in order of value. More...
     
    bool is_power_of_10 (const std::string &num)
     Checks if a std::string value is a power of ten. More...
     
    -

    Detailed Description

    -

    Contains some utility functions.

    -

    Function Documentation

    - -

    ◆ add_leading_zeroes()

    - -
    -
    - - - - - - - - - - - - - - - - - - -
    void add_leading_zeroes (std::string & num,
    size_t num_zeroes 
    )
    -
    - -

    Adds leading zeros to std::string value.

    -
    Parameters
    - - - -
    numstd::string containing the integer value
    num_zeroessize_t specifying number of zeroes to be added
    -
    -
    - -
    -
    - -

    ◆ add_trailing_zeroes()

    - -
    -
    - - - - - - - - - - - - - - - - - - -
    void add_trailing_zeroes (std::string & num,
    size_t num_zeroes 
    )
    -
    - -

    Adds trailing zeros to std::string value.

    -
    Parameters
    - - - -
    numstd::string containing the integer value
    num_zeroessize_t specifying number of zeroes to be added
    -
    -
    - -
    -
    - -

    ◆ get_larger_and_smaller()

    - -
    -
    - - - - - - - - - - - - - - - - - - -
    std::tuple<std::string, std::string> get_larger_and_smaller (const std::string & num1,
    const std::string & num2 
    )
    -
    - -

    Returns std::string parameters in order of value.

    -

    Identifies the given std::string represented integers as larger and smaller, and pads the smaller number with leading zeroes to make it equal in length to the larger number.

    -
    Parameters
    - - - -
    num1the first std::string parameter
    num2the second std::string parameter
    -
    -
    -
    Returns
    std::tuple with two values, first value being the larger parameter and the second value being the smaller parameter
    - -
    -
    - -

    ◆ is_power_of_10()

    - -
    -
    - - - - - - - - -
    bool is_power_of_10 (const std::string & num)
    -
    - -

    Checks if a std::string value is a power of ten.

    -

    The number should be of the 10* regex form.

    -
    Parameters
    - - -
    numstd::string to be checked for validity
    -
    -
    -
    Returns
    bool with True if num is a power of ten.
    - -
    -
    - -

    ◆ is_valid_number()

    - -
    -
    - - - - - - - - -
    bool is_valid_number (const std::string & num)
    -
    - -

    Checks if std::string value is a valid integer.

    -
    Parameters
    - - -
    numstd::string to be checked for integer validity
    -
    -
    -
    Returns
    bool with True if num is valid
    - -
    -
    - -

    ◆ strip_leading_zeroes()

    - -
    -
    - - - - - - - - -
    void strip_leading_zeroes (std::string & num)
    -
    - -

    Removes leading zeroes from an std::string integer.

    -
    Parameters
    - - -
    numstd::string representing an integer
    -
    -
    - -
    -
    -
    - - - - diff --git a/docs/html/utility_8hpp_source.html b/docs/html/utility_8hpp_source.html deleted file mode 100644 index 21e2a76..0000000 --- a/docs/html/utility_8hpp_source.html +++ /dev/null @@ -1,92 +0,0 @@ - - - - - - - -/Users/Mohsin/Repos/BigInt/include/functions/utility.hpp Source File - - - - - - - - - - -
    -
    - - - - - - - -
    -
    Big Integer library for C++
    -
    -
    - - - - - - - - -
    -
    - - -
    - -
    - - -
    -
    -
    -
    utility.hpp
    -
    -
    -Go to the documentation of this file.
    1 
    7 #ifndef BIG_INT_UTILITY_FUNCTIONS_HPP
    8 #define BIG_INT_UTILITY_FUNCTIONS_HPP
    9 
    10 #include <tuple>
    11 
    12 
    19 bool is_valid_number(const std::string& num) {
    20  for (char digit : num)
    21  if (digit < '0' or digit > '9')
    22  return false;
    23 
    24  return true;
    25 }
    26 
    27 
    33 void strip_leading_zeroes(std::string& num) {
    34  size_t i;
    35  for (i = 0; i < num.size(); i++)
    36  if (num[i] != '0')
    37  break;
    38 
    39  if (i == num.size())
    40  num = "0";
    41  else
    42  num = num.substr(i);
    43 }
    44 
    45 
    46 /*
    47  add_leading_zeroes
    48  ------------------
    49  Adds a given number of leading zeroes to a string-represented integer `num`.
    50 */
    51 
    58 void add_leading_zeroes(std::string& num, size_t num_zeroes) {
    59  num = std::string(num_zeroes, '0') + num;
    60 }
    61 
    62 
    69 void add_trailing_zeroes(std::string& num, size_t num_zeroes) {
    70  num += std::string(num_zeroes, '0');
    71 }
    72 
    73 
    86 std::tuple<std::string, std::string> get_larger_and_smaller(const std::string& num1,
    87  const std::string& num2) {
    88  std::string larger, smaller;
    89  if (num1.size() > num2.size() or
    90  (num1.size() == num2.size() and num1 > num2)) {
    91  larger = num1;
    92  smaller = num2;
    93  }
    94  else {
    95  larger = num2;
    96  smaller = num1;
    97  }
    98 
    99  // pad the smaller number with zeroes
    100  add_leading_zeroes(smaller, larger.size() - smaller.size());
    101 
    102  return std::make_tuple(larger, smaller);
    103 }
    104 
    105 
    114 bool is_power_of_10(const std::string& num){
    115  if (num[0] != '1')
    116  return false;
    117  for (size_t i = 1; i < num.size(); i++)
    118  if (num[i] != '0')
    119  return false;
    120 
    121  return true; // first digit is 1 and the following digits are all 0
    122 }
    123 
    124 #endif // BIG_INT_UTILITY_FUNCTIONS_HPP
    bool is_power_of_10(const std::string &num)
    Checks if a std::string value is a power of ten.
    Definition: utility.hpp:114
    -
    std::tuple< std::string, std::string > get_larger_and_smaller(const std::string &num1, const std::string &num2)
    Returns std::string parameters in order of value.
    Definition: utility.hpp:86
    -
    bool is_valid_number(const std::string &num)
    Checks if std::string value is a valid integer.
    Definition: utility.hpp:19
    -
    void add_trailing_zeroes(std::string &num, size_t num_zeroes)
    Adds trailing zeros to std::string value.
    Definition: utility.hpp:69
    -
    void add_leading_zeroes(std::string &num, size_t num_zeroes)
    Adds leading zeros to std::string value.
    Definition: utility.hpp:58
    -
    void strip_leading_zeroes(std::string &num)
    Removes leading zeroes from an std::string integer.
    Definition: utility.hpp:33
    -
    - - - -