From f9b4652e74f47af16dab17526fcd6413d609607c Mon Sep 17 00:00:00 2001 From: Roman Mogilatov Date: Wed, 2 Sep 2015 22:18:13 +0300 Subject: [PATCH] Update basic factory example and docs --- docs/images/providers/factory.png | Bin 7769 -> 8361 bytes docs/providers/factory.rst | 2 +- examples/providers/factory.py | 6 +++--- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/docs/images/providers/factory.png b/docs/images/providers/factory.png index 8b4354fc85ecaf284a6be62ad930afaab9a4c27c..1b0dc8a0b0d914a42a59b82b42212104fb94d10c 100644 GIT binary patch literal 8361 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 K(5%yNc=m77A9N-F literal 7769 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 WA5S