return as hash