suggest to wrap it into the model