library ieee;
use ieee.std_logic_1164.all;

package MINE is 
  function ODD_PAR (I : std_logic_vector) return std_logic;
end package MINE;

package body MINE is
  function ODD_PAR (I : std_logic_vector) return std_logic is
    variable TEMP : std_logic := '1';    
  begin
    for x in I'range loop
      if (I(x) /= '1' or I(x) /= '0') then
        report ("Incorrect value in vector");
        return 'X';
      end if;
      TEMP := TEMP xor I(x);
    end loop;
    return TEMP;
   end ODD_PAR;
end MINE;
