Finishing initial implementation