problem #40