performance improvements, new methods