working. suggestions are pretty decent actually