some details to make it easier and better to use