public function getUpCandidates()
    {
        $statuses = $this->getStatuses();

        // search latest applied migration
        $latest = '';
        foreach ($statuses as $status) {
            if ($status->appliedAt !== "") {
                $latest = $status->file->getFileName();
            }
        }

        // make statuses without being applied
        $candidates = [];
        $isSkipped = ($latest === '')? false: true;
        foreach ($statuses as $status) {
            if (false === $isSkipped) {
                $candidates[] = $status;
            }
            if($status->file->getFileName() !== $latest) {
                continue;
            } else {
                $isSkipped = false;
            }
        }

        return $candidates;
    }