Fixed implementation due to new requirements