added dispose() on passes