flowchart TD
subgraph "with Permission";
A[Ethical] --> C(White Hat);
A --> J(Ehtical Hacker);
end;
C --> F(Gray);
D(Black Hat) --> F;
F --> H(Hacktivists);
F --> I(State-Sponsored);
subgraph "without Permission";
B[Unethical] --> D;
B --> E(Script Kiddies);
B --> G(Terrorists);
end;