Here is the class implementing the interface:

```
public class Dragon extends Character implements Actions {
    static int runRequirement = 95;
}

```

And the interface:

```
public interface Actions {
default <T> boolean run(T enemy) {
    if (Math.random() * 100 < T.runRequirement) {
        return false;
    } else {
        return true;
    }
}

```

Now... I know that T is a generic **type**, so it could be reasonable that a **type** cannot access a static variable, even if **it is** the name of the class, too.

However, I cannot access the static variable even doing something this:

```
T.getClass().runRequirement

```

or:

```
T.getClass().getName().runRequirement // getName() returns a String, but I tried it anyway...

```

or:

```
enemy.getClass().runRequirement

```

Simply: what am I doing wrong? Thank you for the help!