merged initial rework