public static RNASecStr loadSecStrBPSEQ(String path)

	{

		RNASecStr res = null;

		try

		{

			BufferedReader fr  = new BufferedReader(new FileReader(path));

			String line = fr.readLine();

			String seqTmp = "";

			Vector<Integer> strTmp = new Vector<Integer>();

			while(line!= null)

			{

    			line = line.trim();

				String[] tokens = line.split("\\s+");

				if (tokens.length==3)

				{

					try

					{

					  int bpFrom = (Integer.parseInt(tokens[0]))-1;

					  char base = tokens[1].charAt(tokens[1].length()-1);

					  int bpTo =   (Integer.parseInt(tokens[2]))-1;

					  if (bpFrom!=seqTmp.length())

					  {

						  System.err.println("Discontinuity detected between nucleotides "+(seqTmp.length())+" and "+(bpFrom+1)+"!");

						  System.err.println("Filling in missing portions with unpaired unknown 'X' nucleotides ...");

						  while(bpFrom!=seqTmp.length())

						  {

							  seqTmp += 'X';

							  strTmp.add(-1);							  

						  }

					  }

					  seqTmp += base;

					  strTmp.add(bpTo);

					}

					catch(Exception e3)

					{ } 

				}

				line = fr.readLine();

			}

			if (strTmp.size()!=0)

			{

				char[] seq = seqTmp.toCharArray();

				int[] str = new int[strTmp.size()];

				for(int i=0;i<strTmp.size();i++)

				{ str[i] = strTmp.elementAt(i).intValue(); }

				res = new RNASecStr(seq,str);

			}

		}

		catch(IOException e)

		{ System.err.println("Loading failed!\n File '"+path+"' cannot be read !");	}

		catch(Exception egen)

		{ System.err.println("Permission denied for security reason !\nConsider using the VARNA panel class in a signed context."); }

		return res;

	}