More informative constructor