Refactor Prepareable