better error handle && code organise