removed process.available() in PythonAvailableRule and added parameterized type