updated to new interfaces