Fast implementation