// (all of them, including protected ones which are called by the class itself)
// ----------------------------------------------------------------------------
// (all of them, including protected ones which are called by the class itself)
// ----------------------------------------------------------------------------