Added optional output parameter