worked out bugs in the arbitrary construction