some comments, default values and pw.size