New refactor try (2)