some new functions ...