Hi guys! Help me, please! Thank you in advance! Father and Mother print failing validation. Why?
package com.codegym.task.task06.task0621;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

/*
Cat relations

*/

public class Solution {
    public static void main(String[] args) throws IOException {
        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));

        String grandFather = reader.readLine();
        Cat catGrandFather = new Cat(grandFather, null, null);

		String grandMother = reader.readLine();
        Cat catGrandMother = new Cat(grandMother, null, null);

		String fatherName = reader.readLine();
        Cat catFather = new Cat(fatherName,catGrandFather, null);

		String motherName = reader.readLine();
        Cat catMother = new Cat(motherName,null, catGrandMother);

		String sonName = reader.readLine();
        Cat catSon = new Cat(sonName, catMother,catFather);

        String daughterName = reader.readLine();
        Cat catDaughter = new Cat(daughterName, catMother,catFather);


        System.out.println(catGrandFather);
		System.out.println(catGrandMother);
		System.out.println(catFather);
        System.out.println(catMother);
		System.out.println(catSon);
        System.out.println(catDaughter);
    }

    public static class Cat {
        private String name;
        private Cat father;
        private Cat mother;


		Cat(String name, Cat mother, Cat father) {
            this.name = name;
			this.mother = mother;
			this.father = father;
        }

        @Override
        public String toString() {

			if (mother == null && father == null)
			{
			  return "The cat's name is " + name + ", no mother, no father";
			}
            else if (mother == null){
                return "The cat's name is " + name + ", no mother, " + father.name + " is the father";
			}
			else if (father == null)
			{
				return "The cat's name is " + name + ", " + mother.name + " is the mother, no father ";
			}
            else{
                return "The cat's name is " + name + ", " + mother.name +" is the mother, " + father.name + " is the father";
			}
        }
    }

}