batch dense approach