beta implementation