add makeFromJson() and make make() to accept php array instead