public static void PlayerCreateRandomInventory(Player player, String PlayerName, String PlayerRank, List<?> PerkList) {
		
		// loop thru all perks and prepeare / give items to player
		for (int i = 0; i < PerkList.size(); i++) {
			
			// item description - get all lines
			String Line1 = GChub.getPlugin().getMainConfig().getString("DescSetup.Line1");
			String Line2 = GChub.getPlugin().getMainConfig().getString("DescSetup.Line2");
			String Line3 = GChub.getPlugin().getMainConfig().getString("DescSetup.Line3");
			String Line4 = GChub.getPlugin().getMainConfig().getString("DescSetup.Line4");
			
			// get some basic data for current perk
			int PerkSlot = GChub.getPlugin().getMainConfig().getInt("Perks." + PerkList.get(i) + ".slot");
			int PerkAmount = GChub.getPlugin().getMainConfig().getInt("Perks." + PerkList.get(i) + ".amount");
			
			// get list of names for current perk and select a random name
			List<?> PerkNameList = GChub.getPlugin().getMainConfig().getList("Perks." + PerkList.get(i) + ".name");
			int PerkNameRandom = new Random().nextInt(PerkNameList.size());
			String PerkName = PerkNameList.get(PerkNameRandom).toString();
			PerkName = Helper.colors(PerkName);
			
			// get list of item ID's for current perk and select a random item id
			List<?> PerkItemIDList = GChub.getPlugin().getMainConfig().getList("Perks." + PerkList.get(i) + ".id");
			int PerkItemIDRandom = new Random().nextInt(PerkItemIDList.size());
			String PerkItemID = PerkItemIDList.get(PerkItemIDRandom).toString();
			int PerkID = Integer.parseInt(PerkItemID);
			
			// get list of description messages and select a random message
			List<?> DescMessagesList = GChub.getPlugin().getMainConfig().getList("DescMessage");
			int DescMessagesListRandom = new Random().nextInt(DescMessagesList.size());
			String DescMessage = DescMessagesList.get(DescMessagesListRandom).toString();
			
			// setup custom item name and descript
			ArrayList<String> descLines = new ArrayList<String>();
			descLines.add(ItemDescriptionSetup(Line1, PlayerName, PlayerRank, DescMessage));
			descLines.add(ItemDescriptionSetup(Line2, PlayerName, PlayerRank, DescMessage));
			descLines.add(ItemDescriptionSetup(Line3, PlayerName, PlayerRank, DescMessage));
			descLines.add(ItemDescriptionSetup(Line4, PlayerName, PlayerRank, DescMessage));
			List<String> itemLore = new ArrayList<String>(descLines);
			
			// create customized item
			ItemStack PerkItem = new ItemStack(Material.getMaterial(PerkID), PerkAmount);
			PerkItem = setItemMeta(PerkItem, PerkName, itemLore);
			
			// give player newly created item
			player.getInventory().setItem(PerkSlot, PerkItem);	
			
		}
		
	}