@Override
    public boolean onCommand(final CommandSender sender, final Command command, final String label, final String[] args) {
        if (!(sender instanceof Player)) {
            Main.courier.send(sender, "requires-player", label);
            return true;
        }

        final Player player = (Player) sender;
        final Location target = player.getTargetBlock((HashSet<Byte>) null, 50).getLocation();
        if (target == null) {
            Main.courier.send(sender, "unknown-argument", "<Block>", target);
            return true;
        }

        final Set<Region> regions = this.catalog.cached(target);
        final String names = RegionExecutor.formatNames(regions, player);
        Main.courier.send(sender, "target", names, regions.size(), this.catalog.isAllowed(player, target)?1:0, target.getBlockX(), target.getBlockY(), target.getBlockZ());
        return true;
    }