public static void elseIfConstruction(Item i) {

		int type = i.getSym();

		String workingMethod = GenerateForSpim.getWorkingMehtod();
		ObjectInfo oi = new ObjectInfo();
		oi.setType(Constants.METHOD);
		oi.setName("if"+i.getId());
		
		if(i.getSym() != Constants.ELSE) {
			Scanner.get();
			Expression.startExpression(Scanner.get());
		}		

		GenerateForSpim.setWorkingMehtod(String.valueOf(i.getVal()));
		GenerateForSpim.initMehtod(oi);

		while(i == null || i.getSym() != Constants.LBRACE){
			i = Scanner.get();
		}
		GenerateBaseCommants.nextStep();
		
		GenerateForSpim.jumpTo(continueMehtod);

		GenerateForSpim.setWorkingMehtod(workingMethod); //in der Urspruenglichen Mehtode weiterfahren
		if(type == Constants.IF || type == Constants.ELSEIF) {
			GenerateForSpim.bedJump(oi.getName(), true);
		}
		else {
			GenerateForSpim.jumpTo(oi.getName());
		}
	}