Adapted to fit my needs