public String rebuild(List<Ability> spells) throws CMException
				{
					final StringBuffer newVal = new StringBuffer("");
					if(spells.size()==1)
						newVal.append("*" + spells.get(0).ID() + ";" + spells.get(0).text());
					else
					{
						if(spells.size()>1)
						{
							for(int s=0;s<spells.size();s++)
							{
								final String txt = spells.get(s).text().trim();
								if((txt.indexOf(';')>=0)||(CMClass.getAbility(txt)!=null))
									throw new CMException("You may not have more than one spell when one of the spells parameters is a spell id or a ; character.");
								newVal.append(spells.get(s).ID());
								if(txt.length()>0)
									newVal.append(";" + spells.get(s).text());
								if(s<(spells.size()-1))
									newVal.append(";");
							}
						}
					}
					return newVal.toString();
				}