include <iostream>

include <string.h>

using namespace std;

class mystring{
public:

mystring(){    _str = new char[1];    *_str = '\0';}mystring(char *s){    int len = strlen(s);    _str = new char[len+1];    strcpy(_str, s);}mystring(const char* s){    if(s == nullptr){        _str = new char[1];    }else{        _str = new char[strlen(s) + 1];        strcpy(_str, s);    }}//copy constructormystring(const mystring &another){    _str = new char[strlen(another._str) + 1];    strcpy(_str, another._str);}mystring &operator=(const mystring &another){    if(this == &another){        return *this;    }    delete []this->_str;    int len = strlen(another._str);    _str = new char[len+1];    strcpy(_str, another._str);    return *this;}mystring &operator+(const mystring &another){    int catLen = strlen(this->_str);    int srcLen = strlen(another._str);    int len = catLen + srcLen;    this->_str = static_cast<char *>(realloc(this->_str, len+1));    memset(this->_str+catLen,0,srcLen+1);    strcat(this->_str, another._str);    return *this;}bool operator == (const mystring &another){    return strcmp(this->_str, another._str) == 0;}bool operator > (const mystring &another){    return strcmp(this->_str, another._str) > 0;}bool operator < (const mystring &another){    return strcmp(this->_str, another._str) < 0;}char &operator[](int idx){    return _str[idx];}~mystring(){    delete [] _str;}

private:

char *_str;

};

int main()
{

return 0;

}