replaced by the new java cookbook