Simple implementation - stable