updated source to include extra helpers